Fullstack Project: Souk Atlas, a Marketplace from A to Z
The project that brings it all together: design, code, test and ship Souk Atlas, a marketplace for Moroccan artisans — React, a Node.js/Express API, PostgreSQL, Docker, GitHub Actions and a VPS.
A MasterLinux course · Original text
What you will learn
- Turn a client’s needs into user stories, mockups, an architecture and a clean Git repository
- Model a complete PostgreSQL database (relations, constraints, amounts in cents, indexes) and evolve it with migrations
- Design and implement a consistent REST API with Node.js and Express (JSON contracts, error codes, validation, pagination)
- Secure buyer and seller accounts (hashed passwords, database-backed sessions, HttpOnly cookies, roles and ownership)
- Calculate a cart in dirhams with VAT and shipping, and create orders in transactions that protect stock
- Build the React front end (routes, catalogue, cart with reducer and context, seller area) connected to the API
- Test the application end to end and maintain quality with GitHub Actions continuous integration
- Ship to production on a VPS with Docker Compose, nginx, HTTPS, tested backups, monitoring and a launch checklist
Course content
12 lessons · 16 h 30 minSection 1 — Design
Section 2 — Back-end
Section 3 — Front-end
Requirements
- The “Web Development: HTML, CSS and JavaScript” course or an equivalent level
- The “Node.js” course (HTTP server, Express, modules) or equivalent experience
- The “React” course (components, state, effects) or equivalent experience
- The “SQL” course (SELECT, joins, creating tables) or equivalent experience
- Useful for level 4: the “Docker” and “CI/CD” courses
Who is this course for?
- Developers who know each building block separately and finally want to ship a complete application
- Students (BTS, DUT, bachelor’s degree, engineering schools) preparing a final-year project or a strong portfolio
- Freelancers who want to offer custom online stores and marketplaces to Moroccan merchants
- Career changers preparing for a fullstack developer interview