Repofolio makes building your portfolio a breeze. Use the repofolio library to auto-generate a dynamic portfolio from your Github. Then, sit back and relax 🏖️ as your repofolio ✨ magically ✨ updates itself whenever you update Github. Plus, viewers of your portfolio will be able to filter your repos by topic to easily find what they're looking for.
🎬 Watch the demo video at frankie.engineer/more
- 🪄 Automatic updates when you add a new public repo
- ✨ Automatic updates when you change a repo's name, description, or homepage
- 🔎 Viewers of your repofolio can easily filter your repos by topic
- ⭐️ Draw attention to your favorite repos with highlights
- 🏆 Set the priority of repos so your favorites show up first
- 🎥 Link a video & thumbnail with each repo
- 🔧 Add projects without repos (e.g. non-disclosable code or non-software projects)
- Install PostgreSQL
- Install Python
- Install Pipenv
pip install pipenv
- Create a Virtual Environment
pipenv install --python "$PYENV_ROOT/versions/<<version_of_python_you_installed>>/bin/python"
- Install all the dependencies
npm install
- Create
.env
file following the format of the.env.example
file - Create
.flaskenv
file that contains the following:FLASK_APP=repofolio.py
- Create the PostgreSQL database:
cd repofolio
psql
DROP DATABASE repofolio;
DROP USER repofolio;
CREATE USER repofolio WITH PASSWORD '<insert-password-here>';
CREATE DATABASE repofolio WITH OWNER repofolio;
- Seed the database
python database.py
(Note: also run this command if you make any changes to the database structure i.e. you modify themodels.py
file) - Confirm data was seeded correctly
SELECT * FROM repos;
- Exit out of psql
\q
- Start the server:
pipenv run flask run
- If prompted to login to Github or create a Personal Access Token follow the prompts
- ✅ Go to the
/customizations
directory and follow all of the instructions everywhere it saysTODO
- 🌍 Deploy your repofolio & push the data from your local database to your remote database
- 🪄 Sit back and relax as your repofolio automatically updates itself whenever you make updates in Github.
💭 Have questions or feedback? I'd love to hear them! Send me (Frankie, she/her) a message at fwesparza@gmail.com