DokMelody
DokMelody is an ambitious project for coding, documenting and navigating inside software projects. When/if finished, it will be composed of:
- the Dok programming language, oriented towards meta programming, multi-paradigms and Domain Specific Languages;
- the Doknil knowledge-base for linking the various parts of a (software) project;
- the DokMelody IDE for navigating and modifying a Doknil knowledge-base;
- the DokMelody federation of servers for sharing information about (software) projects;
Current status
This repo is an attempt to bootstrap a first usable version of DokMelody. It is all in alpha/design/development state.
References
- Bootstrapping the project
- Fossil based repository and community (wiki, forum, chat)
- GitHub mirror (it accepts also pull requests)
- Documentation
- News
- main web site (under construction)
- email contact: mzan@dokmelody.org
Quick start
Packages
Install Racket and PostgreSQL server packages.
Enable PostegreSQL server.
Database
Create a dokmelody
database on PostgreSQL and make it accessible to your local user.
sudo -u postgres createdb dokmelody
sudo -u postgres createuser <your-user-name> # i.e. `whoami`
sudo -u postgres psql dokmelody -c "grant all privileges on database dokmelody to <your-user-name>;"
Racket application
For installing Racket packages specified in info.rkt
raco pkg install --auto
For compiling
raco make main.rkt
For running
racket main.rkt --start-web-app
For testing
racket main.rkt test
For updating packages to latest version
raco pkg update --auto
Copyright
Authors
- Massimo Zaniboni mzan@dokmelody.org
License
This software is released under the LGPLv3 license or any later version.
Documentation is released under CC BY 4.0 license.
Contributing
Every modified source code file must report in the header the copyright of new contributors, following https://spdx.org/ standard. So something like:
SPDX-License-Identifier: LGPL-3.0-or-later
Copyright (C) YYYY-YYYY Some Name <some.emai@example.net>
and for documentation:
SPDX-License-Identifier: CC-BY-4.0
Copyright (C) YYYY-YYYY Some Name <some.emai@example.net>