Personal Website
Welcome to my personal website's repository. Made with Python Flask and WindiCSS.
๐ ย Update โ May 2022
- Fixed dependencies bugs with
jinja
& specific Python versions preventing the app to start - Fixed the broken dark / white theme switcher (#6)
- Added a complete guide to deploy to Netlify on this README
- Global rewrite of this README with structure and design changes
- This version will be deprecated in favor of a new version made with React & TailwindCSS.
โจ ย Features
- WindiCSS support. WindiCSS is a new frontend framework using classes for styles providing faster load times.
- Dark & Light theme support. Switch with a button on the navbar, saves theme preference on your device
- Responsive. Comfortably view the site from desktops, tablets and mobile devices.
- Dynamic & Static support. Run with a Flask server as a dynamic website or generate a static version (for Netlify/Vercel).
- No HTML edit needed. Get your website ready to use by configuring everything you need in one single file.
- Discord presence support. Live display your Spotify activity on your website directly.
๐ ย Live version
You can view a public version of my site at eri.gg.
๐ ย Dependencies and requirements
- Python v3.5 - v3.8 (dependencies may break with other versions)
- Flask 2.1.0 or higher (backend of the site)
- Frozen_Flask 0.15 (to render a static version of the site)
- Requests 2.23.0 (for server-side API requests)
๐ ย Deploying to Netlify
Netlify is a free service allowing you to deploy web applications for FREE without needing any server. You can get a custom .netlify.app
domain name along with your site.
1. Get a Netlify account
Go to Netlify's website and create an account or log in.
2. Use the quick "Deploy to Netlify" button
3. Make changes on your Netlify configuration
4. Run the deploy process
Go to your Team settings
> Your site
> Builds
and then, click on Retry deploy
to deploy again with your new configuration.
โจ
5. Your site is live ย Check out your domain associated to your website to see your website rendered!
Edit the constants.py
file under the /src
folder to customize it and push to your GitHub repository. Netlify will automatically deploy and update your site.
โ๏ธ Local installation & running
Please note that if you deployed your site on Netlify, you don't need to do this part to install the site localy.
๐ฅ ย 1. Open a terminal and clone this repository
git clone https://github.com/eri/Website.git
and then do cd Website
๐ง ย 2. Install website dependencies
pip3 install -r requirements.txt
๐จ ย 3. Customize the site with your own settings
Go to the /src
folder and edit the constants.py
file with your own settings
Note: If you would like to get a static version of your site, keep
ssr
asTrue
.If you would like to run a Flask server, change
ssr
asFalse
. In that case, you can set a host (IP) and a port where the website will be run.It's recommended to keep
host
as0.0.0.0
if the address is pointing a local address. Feel free to change theport
as you wish.
๐ฉ ย 4. Start the website
Run the python3 run.py
command on your terminal.
๐ฆ ย 5. Your site is ready
If
ssr
inconstants.py
isFalse
, a static version of the site has been generated in a new folder named/build
.
If
ssr
inconstants.py
isTrue
, your site will be available at thehost:port
that you specified. (http://localhost:8000/ by default)