Skip to content

A web application for writing C programs. It functions as an online text editor, allowing users to create and manage their programs in a web-based environment. The application is a single-page web app, providing a seamless user experience without page refreshes.

Notifications You must be signed in to change notification settings

MarcinBrojek/www-editor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Online editor

This repository hosts a web application designed for writing programs in the C language. It functions as an online text editor that enables users to create programs directly within a web-based environment. The application operates as a single-page web app, ensuring a seamless user experience without the need for page refreshes.

Key features include the ability for users to create and delete their own files after setting up an account. The application leverages technologies such as Django, jQuery, Frama-C, and CodeMirror. These tools collectively enable functionalities such as code writing, syntax highlighting, and code analysis.


How to start server?

  1. create python environemnt and install dependencies from requirements (in main directory)
> python -m venv ./myenv
> source myenv/bin/activate
> pip install -r requirements.txt
  1. install frama-c, instruction on page: https://frama-c.com/html/get-frama-c.html

  2. run server (locally)

> python manage.py migrate
> python manage.py runserver
  1. go to web brower to adress http://127.0.0.1:8000 and use application (as user, when logged)

For more information about database go to http://127.0.0.1:8000/admin (login: admin, password: admin)


Technologies versions:

In project used:

  • django (4.2.13)
  • jquery (3.6.0) - already in static directory
  • codemirror (5.61.1) - already in static directory
  • frama-c (22.0 (Titanium))

Usage tips:

  • to add/remove, log into app; the structure for files is:
    directory_1 / ... / directory_n / file / file section
  • in reality user does not delete files, only hides them;
    from admin perpective they can be removed
  • when admin deletes files - they should be removed in order:
    file section -> file -> directory, so dependecies will be erased in proper manner

Application preview

: Code example : : Night mode : : Account register :
1 2 3

Tutorial (of frama-c) and code examples can be found at: https://github.com/AllanBlanchard/tutoriel_wp

About

A web application for writing C programs. It functions as an online text editor, allowing users to create and manage their programs in a web-based environment. The application is a single-page web app, providing a seamless user experience without page refreshes.

Topics

Resources

Stars

Watchers

Forks