Welcome to Ismail Khan's personal website! This website showcases my portfolio, blog, and other projects. It's built using Flask, Frozen-Flask, Jinja2, TailwindCSS, and TypeScript.
Follows PEP8 style guidelines for Python code.
- Home Page: An introduction to me and my work.
- Projects Page: Explore the projects I've worked on, complete with descriptions and links.
- Blog Page: Access my blog posts on various topics.
- Responsive Design: The website is responsive and looks great on both desktop and mobile devices.
- TailwindCSS Styling: Stylish and modern UI design using TailwindCSS.
- Static Site Generation: Uses Frozen-Flask to generate static HTML pages for faster loading and deployment.
- Flask: A micro web framework for Python used for building web applications.
- Frozen-Flask: Converts Flask web applications into static websites.
- Jinja2: A template engine for Python, used for rendering HTML templates.
- TailwindCSS: A utility-first CSS framework for creating modern and responsive web designs.
- JavaScript: Used for client-side interactivity and dynamic behavior.
- GitHub: Hosting the source code and project repository.
To run this project locally, follow these steps:
-
Clone the repository to your local machine:
git clone https://github.com/ismailkhan-dev/personal-github-site-flask.git
-
Navigate to the project directory:
cd personal-github-site-flask
-
Create a virtual environment (recommended):
python -m venv venv
-
Activate the virtual environment:
-
On macOS and Linux:
source venv/bin/activate
-
On Windows (Command Prompt):
venv\Scripts\activate
-
On Windows (PowerShell):
.\venv\Scripts\Activate.ps1
-
-
Install the project dependencies:
pip install -r requirements.txt
-
Run the Flask development server:
flask --app app --debug run
The website will be accessible at
http://localhost:5000
in your web browser. -
Build the tailwindCSS output.css in another shell (optional):
npx tailwindcss -i ./static/src/input.css -o ./static/dist/css/output.css --watch
-
Build the static files with Frozen-Flask:
python3 build.py