Skip to content

The central hub of my progress as I develop my personal website

License

Notifications You must be signed in to change notification settings

danielngira/personal-website

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Personal Website

This repository hosts the code for my personal website, a platform to showcase my projects, skills, and achievements. Built using Django, this website features several pages, including a home page and a projects page.

Table of Contents

  1. Technology Stack

  2. Models

  3. Views

  4. Templates

  5. Installation and Setup

  6. Progress

  7. Future Plans

Technology Stack

  • Backend: Django
  • Frontend: HTML, CSS, Bootstrap
  • Database: SQLite (default for Django)
  • Other: JavaScript for additional interactivity

Models

User

  • Fields: username, email, first_name, last_name, is_staff, is_active, date_joined, last_login, permissions
  • The User model extends Django's AbstractUser and adds custom fields for user permissions.

Project

  • Fields: name, description, year, link, image The Project model represents individual projects, with fields for the project name, description, year, link, and image.

Views

The views for the website are defined using Django's class-based views to handle CRUD operations for projects.

Home View

Renders the home page.

Project Views

Handle listing, detail, creation, updating, and deletion of projects.

Templates

Base Template (base.html)

The base template includes the main structure of the website including the navbar and footer.

Home Template (home.html)

The home template extends the base template and includes custom content.

Installation and Setup

  • Intall necessary requirements:

    pip install -r /path/to/requirements.txt
    
  • Set up virtual environment:

    source /path/to/venv/bin/activate
    
  • Go to the directory where manage.py is located

  • Make necessary migrations:

    python3 manage.py makemigrations
    python3 manage.py migrate
    
  • Create a superuser:

    python3 manage.py createsuperuser
    
  • Add necessary information

  • Run the server:

    python3 manage.py runserver
    
  • Access the website

pip install -r /path/to/requirements.txt
  • Set up virtual environment:
source /path/to/venv/bin/activate
  • Go to the directory where manage.py is located
  • Make necessary migrations:
python3 manage.py makemigrations
python3 manage.py migrate
  • Create a superuser:
python3 manage.py createsuperuser
  • Add necessary information
  • Run the server:
python3 manage.py runserver
  • Access the website

Progress

I have made the following progress on the frontend of my website:

  • Navigation bar
  • Content for my first page
  • Made a basic table
  • Included an image in my website

Future Plans

  • Make projects have pop-up windows that explain what they are in more depth
  • Make certificates in resume be clickable
  • Make a resume page and projects page with working urls
  • Style my table to look good
  • Beef up content on my homepage to be more appealing
  • Write content for my table
  • Get images for my projects
  • Write my resume and style it
  • Have a scroll bar on website

About

The central hub of my progress as I develop my personal website

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published