Skip to content

This website helps to storage contacts data and share with others.

License

Notifications You must be signed in to change notification settings

kdleijer/ContactBook

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Django React HTML5 CSS3 Bootstrap SQLite
Known Vulnerabilities Contributions Welcome
License

ContactBook

This website helps to storage contacts data, share it with others and download contact lists to JSON or PDF file. It's fully connected with database, you can clone this repo and run it on your internal server. Deploy in future. The project was created for educational purposes and to demonstrate my coding skills to my future recruiters.
I highly encourage you to contributions!

Table of Contents:


🛠️ Installation:

• First make sure u have installed latest versions of ReactJS, NodeJS, Python, Django.

• Clone this repository or download latest release.

• Install modules from requirements.txt in django directory.

pip install -r requirements.txt

• Install modules using npm install in react directory.

npm install

Make sure u have installed all modules!

• Change SECRET_KEY in contactbookapi settings or read more about python-decouple.

django directory:

python manage.py migrate

🚀 Run:

django directory:

python manage.py runserver

react directory:

npm start

❓ Usage:

localhost:8000/accounts/login & /register - Django login and registration

localhost:3000/home - ContactBook main page

localhost:8000 - Django REST API

localhost:8000/admin - Django admin panel


✅ Solved Problems:

  • Full functionality of restrict routes in App.js with authentication from django API endpoint!

  • Implemented user login/registration from my own template project: RegistrationDjango!

  • User specific data and contact groups!

  • Fetch data with REST API!

  • Render multiple tables with contact group specific data

  • Edit all contacts in table with editable header above table

  • Search contacts by selected value

  • Download data to JSON or PDF file

  • Specific tables headers

  • Scrollable tables with max height

  • Refactored code for better maintainability

  • Loading screen


🎯 TODO:

  • Share data with other users

  • Reduce fetches, localStorage solutions etc...

  • Dragging, resizing, deleting columns and create custom ones

  • Static position of tables

  • Display contacts by selected order

  • Settings page

  • Better UI design + theme selection

  • Combine logging/registration with home page

  • Resizing website (now its for 1920x1080) + mobile version

About

This website helps to storage contacts data and share with others.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 52.8%
  • Python 22.4%
  • CSS 14.0%
  • HTML 10.8%