Sidewalk Surfers, an Instagram clone, is an app for users to discover skateboarding spots in the Los Angeles area and share content from these locations. It is built using React.js, Redux.js, Python, and Flask.
View live: Sidewalk Surfers App
- Sign up/in with email
- Search in search bar by spot and user
- Google Map with clickable markers for each skate spot
- Create and edit skate spots
- Create, edit, and delete media posts at a specific skate spot
- Create, edit, and delete comments on media posts
-
Clone this repository (only this branch)
git clone https://github.com/owiwamasa/sidewalk-surfer-proj
-
Install dependencies
pipenv install --dev -r dev-requirements.txt && pipenv install -r requirements.txt
-
Install TimeAgo and google-map-react
npm install timeago-react
npm install --save google-map-react
-
Create a .env file based on the .env.example with proper settings for your development environment
-
Setup your PostgreSQL user, password and database and make sure it matches your .env file
-
Get into your pipenv, migrate your database, seed your database, and run your flask app
pipenv shell
flask db upgrade
flask seed all
flask run
-
To run the React App in development, checkout the README inside the
react-app
directory.
IMPORTANT! If you add any python dependencies to your pipfiles, you'll need to regenerate your requirements.txt before deployment. You can do this by running:
pipenv lock -r > requirements.txt
ALSO IMPORTANT! psycopg2-binary MUST remain a dev dependency because you can't install it on apline-linux. There is a layer in the Dockerfile that will install psycopg2 (not binary) for us.
-
Start up Flask and React
-At the root of the project folder, run:
flask run
-In the react-app folder, run:
npm start