Ethica, work without obstacle, is a free internet application for internet and smartphones which proposes a digital and augmented edition of the Ethics by Spinoza (1632-1677). http://app.ethica-spinoza.net

bach 84f7d62d2d updated npm and readme (for offline use) 3 years ago
assets 84f7d62d2d updated npm and readme (for offline use) 3 years ago
.babelrc 30443960ab fixed translation switch bugs 5 years ago
.gitignore 72602b3e12 added lat and en languages, handeled new data structure : titles and filet 6 years ago
.htaccess e77ed37c76 improved route strategy (url path), headers menu are working 6 years ago
LICENSE.txt ffc99be78e started readme, added license 5 years ago
index.html 1c9b4a41f4 updated matomo tracking code 5 years ago
package-lock.json 84f7d62d2d updated npm and readme (for offline use) 3 years ago
package.json def5176164 fixed summary, fix dot dot title on filtred, fixed breadcrumb translation 5 years ago
readme.md 84f7d62d2d updated npm and readme (for offline use) 3 years ago
upload.sh 3d376ffc95 updated upload script 5 years ago
webpack.config.js 30443960ab fixed translation switch bugs 5 years ago
yarn.lock 84f7d62d2d updated npm and readme (for offline use) 3 years ago

readme.md

Ethica

app.ethica-spinoza.net

Ethica, work without obstacle, is a free internet application for internet and smartphones which proposes a digital and augmented edition of the Ethics by Spinoza (1632-1677).

Published in Latin in 1677, the Ethics intends to demonstrate "in the manner of surveyors" not only the existence of God, the nature and the origin of the human mind, but still the way which leads "as by the hand" to salvation and bliss.

Thanks to an unprecedented visualization of the text, Ethica makes visible the demonstrative network of the work. The user can see and read freely the text, explore it in a innovative and intuitive way.

Ethica is accessible to all, curious, specialists or lovers of Spinoza, philosophers, researchers, students.

The application

The database

We are developing a JSON database model adapted to Spinoza's Ethics, allowing us to dynamically load content into the interface and also to share these contents in a standardized way. This bdd model is constantly evolving in relation to the development of the project.

We also developed a routine python we allow to recover the different versions of the Ethics available in free right on internet as well as a new translation in Brazilian and to format them for our model of bdd json.

Design

Multiple tests and versions of design and graph for the reading interface have all been done under Linux and with free software, mainly Inkscape. We will also share the sources of all these design documents.

The development of the interface

The interface is developed in pure javascript (vanilla). There is no back-office, or server-side code, which makes the application autonomous, to make it available in different contexts : website, desktop application, mobile application. We use the mithril interface framework to gain weight and speed of development. This framework is at the same time very light, flexible in these models of use, and very fast.

We have not added any additional js plugin, such as jquery for example, in order to gain execution velocity and because current javascript environments are powerful enough and standardized enough to be used as is. webpack serves as a development environment, which allows to design the source application of different modules arranged between them. This has the effect of better organizing the code and allow a more fluid collaborative work.

Sources

All sources of design and codes of the application will be shared under free license Gnu GPLv2 via this deposit. If you are interested to use parts of this work please make your request to contact@ethica-spinoza.net.

install

git clone https://figureslibres.io/gogs/bachir/app.ethica-spinoza.net.git
cd app.ethica-spinoza.net
python -m http.server

You can now access the app through http://localhost:8000 It's possible to use any http server to server the folder.

dev

npm install
webpack