GithubHelp home page GithubHelp logo

aliersel / codevault Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 20.55 MB

A relational database-based website for managing interview questions, featuring two types of questions - algorithmic and textual.

License: MIT License

Java 42.90% HTML 0.14% Vue 51.34% TypeScript 2.80% CSS 0.57% PLpgSQL 2.25%
code-management interview-preparation interview-questions

codevault's Introduction

CodeVault

中文

CodeVault is a website based on a relational database designed to manage interview questions. It offers two types of questions: algorithmic and textual. Through this platform, users can easily organize, manage, and browse various interview questions. Whether you need challenging algorithmic problems or textual questions that demonstrate your thinking skills, CodeVault meets the needs of job seekers and interviewers alike. This powerful tool provides reliable support for interview preparation, enabling everyone to perform at their best during interviews.

How to Use

Frontend port: 5172
Backend port: 8765
Set in vite.config.ts and application.yaml respectively
Database connection information is set in application.yaml, default is jdbc:postgresql://${POSTGRESQL_HOST:localhost}:5432/code_vault
Username and password need to be set by the user
DDL.sql must be executed to create the database tables

Project Structure

.
├── README.md
├── codevault-backend
│   ├── pom.xml
│   └── src
│       ├── main
│       │   ├── java
│       │   │   └── com.aliersel.codevaultbackend
│       │   │       ├── CodevaultBackendApplication.java
│       │   │       ├── controller
│       │   │       │   ├── UserController.java
│       │   │       │   └── ProblemController.java
│       │   │       |   └── FolderController.java
│       │   │       |   └── api
│       │   │       ├── mapper
│       │   │       │   ├── UserMapper.java
│       │   │       │   └── ProblemMapper.java
│       │   │       |   └── FolderMapper.java
│       │   │       |   └── CommentMapper.java
│       │   │       ├── service
│       │   │       │   ├── impl
│       │   │       │   │   ├── UserServiceImpl.java
│       │   │       │   │   ├── ProblemServiceImpl.java
│       │   │       │   │   └── FolderServiceImpl.java
│       │   │       │   ├── intf
│       │   │       │   │   ├── UserService.java
│       │   │       │   │   ├── ProblemService.java
│       │   │       │   │   └── FolderService.java
│       │   │       ├── config
│       │   │       ├── entity
│       │   │       ├── exception
│       │   │       ├── util
│       │   │       └── security
│       │   └── resources
│       │       ├── application.yaml
├── codevault-frontend
│   ├── package.json
│   ├── vite.config.ts
│   ├── tsconfig.json
│   ├── yarn.lock
│   ├── src
│   │   ├── App.vue
│   │   ├── main.ts
│   │   ├── style.css
│   │   ├── api
│   │   ├── assets
│   │   ├── components
│   │   ├── router
│   │   ├── store
│   │   ├── utils
│   │   └── views

Project Tech Stack

Frontend: Vue3 + TypeScript + Vite + Naive UI
Backend: Spring Boot + MyBatis + PostgreSQL

Project Features

  • Frontend and backend are separated, with Vue3 used on the frontend and Spring Boot on the backend
  • Vite is used as the frontend build tool, which improves development efficiency
  • TypeScript is used on the frontend, making the code more standardized and readable
  • Naive UI is used as the UI framework, offering a beautiful interface and friendly user interactions
  • MyBatis is used as the ORM framework on the backend, making the code clean and easy to maintain
  • PostgreSQL is used as the database, supporting large-scale data storage
  • Spring Security is used as the security framework to ensure the safety of user information
  • JWT is used for authentication to ensure the security of user information
  • Swagger is used for generating API documentation, facilitating frontend and backend integration
  • Lombok is used to simplify the code and improve development efficiency

Project Functions

  • User registration and login
  • CRUD operations for interview questions
  • Categorization and management of interview questions
  • Archiving of interview questions (creation, deletion, renaming, moving of folders)
  • Adding notes and code to interview questions, supporting multimedia and multiple languages

Project Screenshots

image image image image image image image

Project Open Source License

MIT License

Project References

codevault's People

Contributors

aliersel avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

sagodawn

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.