Technical Design Documents
Pdf documents for developers (this documentation is under construction so it is evolving every week)
Present version : preliminary edited on 2023/03/18
PDF version | PDF version | Mindmap PDF | Xmind file |
SLS TDD Development Deployment Configuration (draft) | view pdf | view PDF | Xmind |
SLS TDD User Interface Components (draft) | view pdf | view PDF | Xmind |
SLS TDD Code Structure Map (draft) | view pdf | view PDF | Xmind |
SLS TDD & System Components (draft) | view pdf | view PDF | Xmind |
1 GENERAL DESCRIPTION OF APPLICATION :
SousLeSens (also called “SLSV”) is a set of tool to visualize and manipulate graphs, manage search and implement semantic web applications.
It’s open source (MIT license), all code listed on SousLeSens GitHub, Web site is souslesens.org for wiki & documentation.
2 Technology solution
Senslesens has created like a <Semantical Web> Client/Server application.
The application has initialized like a <Node/Express JS> project with IDE <WebStrom> since 2020. Its principals’ functions realized directly by <JavaScript> language, and ontologies sources and database are with <SparQL> +<SQL server>
Communication between front and server are used <Rest API> implemented by <Express JS>
Style applicated is Pug (Jade) for view Engie , and CSS style
In 2022, application has added a new component: <ConfigEditor>, this component has created by <React JS> with <Type Script> . And it was also updated to <Docker compose> run time solution, one for web application server and another side for <SPARQL> server.
3 Architecture & System COMPONENTS
Please reference to <TDD-SLSV_SYS_Components > Technical Design Document of SLS System Components to get all detail documentation
4 User Interface (UI) components
Please reference to <TDD-SLSV_UI_Components> Technical Design Document of SLS UI Components to get all detail documentation
4.1 Main interface <Vocables>
It’s a principal interface of application, it includes next main functions <Tools> components:
- Lineage
- KG creator
- Standardizer
- ConfigEditor
- Business Admin
4.2 Interface < Yasguy >
Triple generation page
4.3 Interface < Ontocommons>
<SousLeSens> Community connection API
4.4 Graphical part:
<node>
< individual>
5 Development contents
5.1 Tree structure of code
Please reference to < TDD-SLSV_Code_Structure> Technical Design Document of SLS Code Structure to get all detail documentation
- /bin # Server side code
- /public # Web Client side code
- /api # Server side API code
- /scripts # Installation script folder
- /views # Pug(Jade) node express js project view engineer
- /data # pdf, image, csv, etc
- /config_templates # Configuration templates will be used during installation cycle , called by installation script
- /cypress # UI test file folder
- /tests # test file folder
- /mainapp # ConfigEditor component folder (React)
- /model # ConfigEditor component folder (React)
- /node_modules # External dependencies folder (generated after “npm install” or “npm ci”)
- /config # Run time configuration files folder (generated after “node /scripts/init_config.js” during first deployment)
- /docs #coments’ documents generation folder
- /java #java-jena code folder
5.2 Settings, Environement, Deployment
See < TDD_SLSV_Dev_Deploy_Prod_Env> Technical Design Document of SLS Dev Deploy Production to get more information for development, deployment process and also configuration of application