+The main objective is to empower the inhabitants to organize around specific proposals and generate federated governments with specific characteristics.
-And much more, that we invite you to discover by yourself.
-
----------
----------
## Installing:
## Installing:
-Follow ['INSTALL.md'](docs/install.md) to build and install it on your device.
+Follow ['INSTALL.md'](docs/install/install.md) to build and install it on your device.
----------
----------
-## Setup:
+## Setup & Deploy:
Visit ['Settings'](https://wiki.solarnethub.com/socialnet/snh#settings_minimal) to learn how to choose your language, set a theme & configure your avatar.
Visit ['Settings'](https://wiki.solarnethub.com/socialnet/snh#settings_minimal) to learn how to choose your language, set a theme & configure your avatar.
@@ -99,7 +187,7 @@ This allows you to communicate and access content from outside the [project netw
----------
----------
-## SNH-Hub:
+## SNH-Hub (for HackLabs):
The public content of the ['PUB: "La Plaza"'](https://wiki.solarnethub.com/socialnet/snh-pub) can be visited from outside the [project network](https://wiki.solarnethub.com/socialnet/overview), through the [World Wide Web](https://en.wikipedia.org/wiki/World_Wide_Web) (aka [Clearnet](https://en.wikipedia.org/wiki/Clearnet_(networking))).
The public content of the ['PUB: "La Plaza"'](https://wiki.solarnethub.com/socialnet/snh-pub) can be visited from outside the [project network](https://wiki.solarnethub.com/socialnet/overview), through the [World Wide Web](https://en.wikipedia.org/wiki/World_Wide_Web) (aka [Clearnet](https://en.wikipedia.org/wiki/Clearnet_(networking))).
@@ -117,17 +205,25 @@ See stats: https://laplaza.solarnethub.com/
----------
----------
-## Development:
+## Roadmap:
-Oasis is completely coded in: node.js (v22.13.1), HTML5 + CSS.
+Review ['Roadmap'](https://wiki.solarnethub.com/project/roadmap#the_project_network) to know about some required functionalities that can be implemented.
-Check ['Call 4 Hackers'](https://wiki.solarnethub.com/community/hackers) for contributing with developments.
+----------
+
+## Translations:
+
+Oasis supports multiple languages. One way to contribute is to translate the interface into your language so other people in your region can use it more intuitively.
-Review ['Roadmap'](https://wiki.solarnethub.com/project/roadmap#the_project_network) to know about some required functionalities that can be implemented.
+Oasis is completely coded in: node.js, HTML5 + CSS.
+
+Check ['Call 4 Hackers'](https://wiki.solarnethub.com/community/hackers) for contributing with developments.
+To help your PUB discover other Oasis-connected peers and speed up replication, we’ve included the Oasis seed PUB at `solarnethub.com` in your config file.
+Once Oasis is started in dev mode, visit [http://localhost:3000](http://localhost:3000).
+
+While the server processes are running, they will restart theirselves automatically every time you save changes in any file into `/src`. Page autoreload feature is not available even for the development environment because we avoid using JavaScript in the browser, so your browser will remain untouched. Reload the page manually to display the changes.
console.log("\noasis@version: new code updates are available:\n\n1) Run Oasis and go to 'Settings' tab\n2) Click at 'Get updates' button to download latest code\n3) Restart Oasis when finished\n");
console.log("\noasis@version: new code updates are available:\n\n1) Run Oasis and go to 'Settings' tab\n2) Click at 'Get updates' button to download latest code\n3) Restart Oasis when finished\n");
- } else {
- console.log("\noasis@version: no updates required.\n");
+ } else if (status === "") {
+ console.log("\noasis@version: no updates requested.\n");
}
}
});
});
} catch (error) {
} catch (error) {
- console.error("Error fetching from official URL:", error.message);
checkMirror((err, data) => {
checkMirror((err, data) => {
if (err) {
if (err) {
- console.error("Error fetching from mirror URL:", err.message);
+ console.error("\noasis@version: no updates requested.\n");
} else {
} else {
diffVersion(data, (status) => {
diffVersion(data, (status) => {
- if (status === "required") {
- global.ck = "required";
+ if (status === "required" && !printed) {
+ printed = true;
console.log("\noasis@version: new code updates are available:\n\n1) Run Oasis and go to 'Settings' tab\n2) Click at 'Get updates' button to download latest code\n3) Restart Oasis when finished\n");
console.log("\noasis@version: new code updates are available:\n\n1) Run Oasis and go to 'Settings' tab\n2) Click at 'Get updates' button to download latest code\n3) Restart Oasis when finished\n");
} else {
} else {
- console.log("\noasis@version: no updates required.\n");
+ console.log("\noasis@version: no updates requested.\n");
-const { a, em, strong } = require('../../../server/node_modules/hyperaxe');
-module.exports = {
- fr: {
- languageName: "Français",
- extended: "Multivers",
- extendedDescription: [
- "Lorsque vous soutenez quelqu'un, vous pouvez télécharger les publications des habitants qu'ils soutiennent, et ces publications apparaissent ici, triées par récence.",
- ],
- popular: "Points forts",
- popularDescription: [
- "Publications des habitants de votre réseau, ",
- strong("triées par spreads"),
- ". Sélectionnez la période de temps pour obtenir une liste.",
- ],
- day: "Jour",
- week: "Semaine",
- month: "Mois",
- year: "Année",
- latest: "Derniers",
- latestDescription: [
- strong("Publications"),
- " de vous et des habitants que vous soutenez, triées par les plus récentes.",
- ],
- topics: "Sujets",
- topicsDescription: [
- strong("Sujets"),
- " de vous et des habitants que vous soutenez, triés par les plus récents. Sélectionnez l'horodatage d'une publication pour voir le reste du fil.",
- ],
- summaries: "Résumés",
- summariesDescription: [
- strong("Sujets et quelques commentaires"),
- " de vous et des habitants que vous soutenez, triés par les plus récents. Sélectionnez l'horodatage d'une publication pour voir le reste du fil.",
- ],
- threads: "Fils",
- threadsDescription: [
- strong("Publications avec commentaires"),
- " des habitants que vous soutenez et de votre multivers, triées par les plus récentes. Sélectionnez l'horodatage d'une publication pour voir le reste du fil.",
- ],
- profile: "Avatar",
- inhabitants: "Habitants",
- manualMode: "Mode Manuel",
- mentions: "Mentions",
- mentionsDescription: [
- strong("Publications qui vous @mentionnent"),
- ", triées par les plus récentes.",
- ],
- private: "Boîte de réception",
- peers: "Nœuds",
- privateDescription: [
- "Le dernier commentaire de ",
- strong("fils privés qui vous incluent"),
- ", triés par les plus récents. Les publications privées sont chiffrées pour votre clé publique et ont un maximum de 7 destinataires. Les destinataires ne peuvent pas être ajoutés après le début du fil. Sélectionnez l'horodatage pour voir le fil complet.",
- ],
- search: "Rechercher",
- imageSearch: "Recherche d'images",
- searchPlaceholder: "Recherchez des habitants, des #hashtags et des mots clés ...",
- settings: "Paramètres",
- continueReading: "continuer la lecture",
- moreComments: "plus de commentaires",
- readThread: "lire le reste du fil",
- // modules
- modules: "Modules",
- modulesViewTitle: "Modules",
- modulesViewDescription: "Configurez votre environnement en activant ou désactivant des modules.",
- inbox: "Boîte de réception",
- multiverse: "Multivers",
- popularLabel: "⌘ En vedette",
- topicsLabel: "ϟ Sujets",
- latestLabel: "☄ Derniers",
- summariesLabel: "※ Résumés",
- threadsLabel: "♺ Fils",
- multiverseLabel: "∞ Multivers",
- inboxLabel: "☂ Boîte de réception",
- invitesLabel: "ꔹ Invitations",
- walletLabel: "❄ Portefeuille",
- legacyLabel: "ꖤ Clés",
- cipherLabel: "ꗄ Crypte",
- saveSettings: "Enregistrer les paramètres",
- // post actions
- comment: "Commenter",
- subtopic: "Sous-sujet",
- json: "JSON",
- // relationships
- unfollow: "Ne plus soutenir",
- follow: "Soutenir",
- block: "Bloquer",
- unblock: "Débloquer",
- newerPosts: "Publications plus récentes",
- olderPosts: "Publications plus anciennes",
- feedRangeEmpty: "La plage donnée est vide pour ce flux. Essayez de voir le ",
- seeFullFeed: "flux complet",
- feedEmpty: "Le client local d'Oasis n'a pas encore accédé aux publications.",
- beginningOfFeed: "Ceci est le début du flux",
- noNewerPosts: "Aucune publication plus récente reçue.",
- importAttach: "Joindre un fichier chiffré (.enc)",
- passwordLengthInfo: "Le mot de passe doit contenir au moins 32 caractères.",
- passwordImport: "Saisissez votre mot de passe pour déchiffrer les données qui seront enregistrées dans le répertoire de votre système (nom : secret)",
- exportPasswordPlaceholder: "Utilisez des minuscules, majuscules, chiffres et symboles",
- fileInfo: "Votre clé secrète chiffrée sera enregistrée dans le répertoire de votre système (nom : oasis.enc)",
- themeIntro: "Choisissez un thème.",
- setTheme: "Définir le thème",
- language: "Langue",
- languageDescription: "Si vous souhaitez utiliser une autre langue, sélectionnez-la ici.",
- setLanguage: "Définir la langue",
- status: "Statut",
- peerConnections: "Nœuds",
- peerConnectionsIntro: "Gérez toutes vos connexions avec d'autres nœuds.",
- walletDescription: "Gérez vos actifs numériques, y compris l'envoi et la réception d'ECOin, consultez votre solde et votre historique de transactions.",
- walletDate: "Date",
- walletFee: "Frais (Plus les frais sont élevés, plus votre transaction sera traitée rapidement)",