Skip to content

ebouchut/learn-dev

Learn-dev: An Interactive Programming Learning Platform

Presentation

An interactive programming learning platform with automated assessment and hands-on practice.

This project aims to enable students to learn programming through hands-on practice with automated assessment and real-time feedback.

It is also my capstone project for the Web and Web Mobile Developer REAC certification, which I am currently undergoing at La Plateforme_.

Goals

  • Provide an interactive environment for learning programming concepts
  • Implement automated code assessment and feedback
  • Support multiple user roles (such as Student, Instructor, Admin)
  • Demonstrate full-stack development skills using industry standards

Tech Stack

This project is built with Java/Spring Boot backend and Thymeleaf frontend.

Backend

  • Language: Java 21
  • Frameworks:
    • Java Framework used to build (Web) Applications and REST endpoints.
  • Authentication and authorization framework:
  • Spring Security:
  • Database:
  • Build and dependency management tool:
  • Containerization:
    • Podman (preferred over Docker) to containerize parts of the application as container images that can run as autonomous containers.

Frontend

TODO

Development Tools

  • JetBrains IntelliJ IDEA: IDE
  • Git: Version control
  • Maven: Build and dependency management
  • Podman: Containerization
  • Swagger: API documentation

Getting Started

Prerequisites

See the Tech Stack section.

Installation

TODO

Project Status

See the GitHub Project for up-to-date information.

Contributing

See the CONTRIBUTING.md file for how to help out.
It contains detailed guidelines, including:

  • Architecture overview
  • Code:
    • Documentation
    • Directory structure
    • Naming conventions
  • Database:
    • Database schema, ERD (Entity Relationships Diagram)
    • Running database migrations
  • Git:
    • Git branching strategy
    • Git commit message conventions
  • Dependencies:
    • Adding dependencies
    • Installing dependencies
  • Running tests
  • Submitting pull requests
  • ...

License

This project is dual-licensed
under AGPL v3 for open source use
and a commercial license for proprietary use.

See LICENSE for details.

Authors

Eric Bouchut:

Resources

About

An interactive programming learning platform with automated assessment and hands-on practice.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors