Web Development Internship — Amzer Nevez
How I found the internship
Before the placement started, I searched the online directory of associations in the Lorient area. Amzer Nevez caught my interest, so I visited their website to understand their activities and online presence. That first visit already showed several issues on the site — which convinced me a full renovation was needed, and that this would be a strong, concrete project for my Licence internship.
The association
Amzer Nevez is a Breton cultural centre at 2 Chemin du Conservatoire, 56270 Ploemeur. Founded in 1981 as a regional conservatory for traditional music, it has grown into a broader cultural hub: music workshops (bombarde, accordion, violin, and more), Breton dance, Breton language courses, summer stages, concerts, artistic education projects, thematic stays, catering and room rental.
People I worked with
- Emilie Toutain — internship supervisor (steady support and guidance throughout the project)
- Arzela Kerangoarec — communications officer (weekly meetings that helped align content, priorities and UX expectations)
- The wider Amzer Nevez team — warm welcome and practical collaboration
Roughly half of the internship was remote. Regular emails, calls and weekly syncs kept the association involved in every design and feature decision.
1. Diagnosis of the old website
My first technical step was a structured audit of the existing site. Main problems:
- No mobile optimisation — hard to browse on phones
- Outdated visual style — looked old compared to modern expectations
- Confusing / invasive navigation — users got lost in menus
2. Front-end — mockups & staging
Three mockups in week one
As soon as I was accepted, I proposed three HTML/CSS mockups so the team could choose a direction (with help from tutorials, Visual Studio and CodePen snippets):
- Dynamic background animation (subtle, modern feel)
- Clean sober design without animation
- More interactive version with several UI animations
Alwaysdata test hosting
The association chose the first mockup. I hosted it on Alwaysdata (free tier up to 100 MB, HTTPS, MySQL available). That staging site was essential for remote work: the team could review the live mockup anytime and give continuous feedback.
Final front-end pages
Styles and features evolved a lot (some pages were built then removed after feedback). The retained structure included:
- Home — muted background video, address, social links, Breton translation, upcoming events gallery (4×3), click-through to bilingual event details
- Activities — paid courses, stages, mediation; quote request form
- Services — lodging, room rental, catering
- About — history, team, partners
- Nav link to Mapado ticketing; footer with contacts and partner logos
- Early back-office UI based on an Admin Pro Angular template (login + management shell)
3. Back-end — MySQL & CodeIgniter
Database
The association needed to edit texts easily. I created a MySQL database on Alwaysdata with tables for:
- Events
- Page texts
- Users (back-office accounts)
CodeIgniter (MVC)
I installed CodeIgniter for database helpers, clear MVC separation and flexible routing. Local tests also used XAMPP.
- SQL in models to list upcoming events first
- Home route + parameterised route for a full event page (time, FR + Breton descriptions)
- Activities / Services / About pages pulling texts by ID from the database
- Event gallery layout driven by a simple 0/1 pattern for the visual grid
4. Security
- Back-office login with hashed & salted passwords
- Access checks on every admin form — redirect if unauthorised
- Forms protected against SQL injection
- Google captcha on login and public forms (spam protection)
5. Go-live procedure
- Association cancelled the old site with the previous external provider
- After a cost comparison, I recommended OVH hosting (~€4/month) — web hosting, database and SSL
- Connected via FileZilla (FTP) and uploaded the site files
- Created a new MySQL database on OVH and imported the staging database dump
- Transferred domain names with the transfer code system
- SEO: Google Search Console registration, sitemap, robots.txt, relevant meta tags
What this internship taught me
Beyond the stack (HTML/CSS, CodeIgniter, MySQL, security, hosting), I learned to work iteratively with non-technical stakeholders, ship through remote feedback loops, and own a full website lifecycle — from finding the opportunity and diagnosing a broken product to redesign, backend, hardening and production launch.
This page is an English summary of my French internship report.
Download the full report (PDF, French) →