SODAR Core is a framework for Django web application development.
It was conceived to facilitate the creation of scientific data management and analysis web applications, but can be useful in other contexts as well. In that it is similar to the CMS or ecommerce frameworks that you can find Awesome Django List but you will find the components/libraries provided in SODAR Core are more generic and in this reflecting the broader range of applications that we target.
There are two ways:
- Front to Back
If you have the time and patience, reading the whole manual will teach you everything.
- Jump Around (recommended)
Start with
for_the_impatient
and/oruser_stories
, skim over the summary of each app, and explore what interests you most.
SODAR Core
- is Django-based and you will need some knowledge about Django programming in Python for it to be useful,
- provides you with libraries for developing your own applications.
SODAR Core
- is NOT a ready-made web application,
- is NOT for entry-level Python programmers (you will need intermediate Django knowledge; you probably do not want to base your first Django web application on SODAR Core).
The full list of apps are shown in the table of contents (on the left if you are reading the HTML version of this documentation). Here are some highlights:
- Project-based user access control
- Dynamic app content management
- Advanced project activity logging
- Small file uploading and browsing
- Managing server-side background jobs
- Caching and aggregation of data from external services
- Tracking site information and statistics
- Overview & Getting Started
This part aims at getting you an birds-eye view of SODAR Core and its usage.
- SODAR Core Apps
This part documents each Django app that ships with SODAR. As a reminder, in Django development, apps are re-usable modules with code for supporting a certain use case.
- Project Info
This part of the documentation provides meta information about the project and the full changelog.
You should know the following before this documentation is useful to you:
- Python Programming
There's tons of documentation on the internet but the official Python documentation is a good starting point as any.
- Django Development
For learning about Django, head over to the excellent documentation of the Django Project.
- HTML / Javascript / CSS / Bootstrap 4
Together with Django, SODAR Core provides a framework to plug in your own HTML and related front-end code. We assume that you have web development experience and in particular know your way around Bootstrap 4.
We're using the Bootstrap 4 CSS framework and you can learn about it in many places including the official documentation
Note
You can find the official version of this documentation at readthedocs.io. If you view these files on GitHub, beware that their renderer does not render the ReStructuredText files correctly and content may be missing.
Overview <overview> getting_started for_the_impatient user_stories glossary
Projectroles <app_projectroles> Adminalerts <app_adminalerts> Appalerts <app_appalerts> Bgjobs <app_bgjobs> Filesfolders <app_filesfolders> Siteinfo <app_siteinfo> Sodarcache <app_sodarcache> Timeline <app_timeline> Tokens <app_tokens> Userprofile <app_userprofile>
Overview <dev_site> Project Apps <dev_project_app> Site Apps <dev_site_app> Backend Apps <dev_backend_app> General Resources <dev_resource> General Guidelines <dev_guideline>
Overview <dev_core_overview> contributing code_of_conduct Installation <dev_core_install> Guidelines <dev_core_guide> Development Resources <dev_core_resource>
repository major_changes Full Changelog <changelog>