Code Monkey home page Code Monkey logo

certalog's Introduction

Certalog

Description:

Certalog is a website that allows users to upload their certificates/licenses onto the website. Certalog is a catalog but for certificates so the users are able to see all their certificates at once in a "catalog" like page. This allows them to keep track of important certificates and not lose them. With Certalog, you wouldnt have to go finding for that certificate you need to add to your portfolio.

Aim: Allow users to keep track of their certificates and maintain them.

Frontend: HTML, CSS, JS, Bootstrap
Backend: Flask
Database: SQLAlchemy
Web Hosting: Heroku

Features

  • Create your own account and authenticate
  • Add certificates
  • Able to see all the certificates at once
  • Able to delete certificates
  • single Platform for you to save your certificates
  • Easy to track your portfolio (i.e how many certificates you have garnered)
  • Fully functional for you to make your Certalog your own!
  • Easy to filter certificates by tags!

Environment setup:
pip install -r requirements.txt
cd Certalog
flask run

Details about the files

init.py

  • Create flask app and import the necessary modules and classes from the other python applications.

auth.py

  • Authentication for the user
  • Defines the login, logout, signup functions

models.py

  • Create the User, Tag, Cert classes.
  • Initialize the necessary database columns for each class inside them

views.py

  • Creates various routes needed for the website and then renders the necessary templates when these routes are called upon

add.html

  • Implements forms through which users can add new certificates

catalog.html

  • Images of the certificates are present in the catalog page
  • Also implements a search bar which searches for the certificate based on their tags

cert-details.html

  • Redirected from the catalog page when user clicks on that certificate
  • Shows relevant informations regarding the certificate, issuer, tags, date, comments, title

home.html

  • Homepage which tells more about Certalog and its uses

login.html

  • Login page

signup.html

  • Sign-up page

success.html

  • Tells user that their certificate has been uploaded successfully.
  • Gives them options to either add more certificates and then redirecting them to add.html or return back to home.html

Limitations

One major limitation of the website is that it is only able to show images in the catalog page. However, most of the certificates are in pdf format. However, this could be solved in the future by having a function in which the pdf is converted to jpg/png so that it can be seen on the catalog page.

Improvements

  • Implement update feature along with the already implemented delete function
  • Make the UI/UX more user friendly
  • Make the website more dynamic by integrating it with frontend written in React
  • Add more features

Credits

This was made as the final project for the Harvard CS50x Course. Through this project I was able to experience the entire full stack developmental cycle from the frontend to the backend and integrating the backend with the database. This was my first full stack project and hopefully more are to come!

certalog's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.