A Lenny Kravitz fan page built in fullstack with react on the client, flask on the server and is connected to an email service using flask-mail. Users can join the mailing list, view all albums and suggest a name and release date for a new album. Subscribers will receive a welcome email and updates of new albums.
-
Clone or download this repo
-
Navigate to root directory of this repository
-
Open the terminal and navigate to the api subdirectory
pipenv shell
pipenv install
pipenv run dev
- Flask API will be running on port 5000
-
Navigate to the client subdirectory
npm install
npm run dev
- The client will open on port 8080
To run API test suite:
pipenv run test
- HTML, CSS, JavaScript, Python
-
Server: flask, flask-mail, flask-cors, gunicorn
-
Client: axios, react, router-dom, react-router-dom, react-icons
-
Server: pytest, pytest-cov
-
Client: babel, react-testing-library, jest
- Decide on flow and idea and what is needed for a MVP
- Listen to some Lenny Kravitz music!
- Create seed data to be used for API
- Drive and navigation between collaborators
- Start with backend then create a front-end client
- Add styling and finalise!
- MailTrap still sending emails during testing
- Set up pages and components
- Use axios to set up GET request from API
- Implement socket.io client
- Styling!
- Set up server with routes and controllers
- Complete GET, POST routes
- Test!
- Created in one day!
- Finding MailTrap which is a great way to test emails without using own account
- Testing with flask mail - mail still sending during testing
- Switching between both Python and JavaScript!