Editing AAGRINDER software

From AAGRINDER wiki
Jump to navigationJump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
 
 
This page describes the dependencies of AAGRINDER, as well as software related to it in other ways.
 
This page describes the dependencies of AAGRINDER, as well as software related to it in other ways.
  
Line 5: Line 4:
 
The AAGRINDER client runs in a web browser and is written in the language [[wikipedia:Javascript|Javascript]]. To allow shared client-server code, the server is also written in Javascript. The server uses [[wikipedia:Node.js|Node.js]] to run Javascript. However, the [[AAGRINDER terrain generator]] is a separate application and is written in the language [[wikipedia:C%2B%2B|C++]].
 
The AAGRINDER client runs in a web browser and is written in the language [[wikipedia:Javascript|Javascript]]. To allow shared client-server code, the server is also written in Javascript. The server uses [[wikipedia:Node.js|Node.js]] to run Javascript. However, the [[AAGRINDER terrain generator]] is a separate application and is written in the language [[wikipedia:C%2B%2B|C++]].
  
Older versions of AAGRINDER require a MySQL-compatible database for storing account data. As of 8th of July 2022, a database is not needed and a simple JSON file is used instead. Very old versions of AAGRINDER (2017) require a MongoDB database for storing account data.
+
The AAGRINDER server requires a MySQL or MySQL-compatible database for storing account data. This is not required if the server is running in [[Running in insecure mode|insecure mode]].
  
 
== Dependencies ==
 
== Dependencies ==
Line 15: Line 14:
 
* [https://www.npmjs.com/package/bcryptjs bcryptjs] (used for cryptography with account passwords)
 
* [https://www.npmjs.com/package/bcryptjs bcryptjs] (used for cryptography with account passwords)
 
* [https://www.npmjs.com/package/express express] (used for serving web pages)
 
* [https://www.npmjs.com/package/express express] (used for serving web pages)
 +
* [https://www.npmjs.com/package/mysql mysql] (used for connecting to the MySQL database)
 
* [https://www.npmjs.com/package/socket.io socket.io] (used for asynchronous communication with the client)
 
* [https://www.npmjs.com/package/socket.io socket.io] (used for asynchronous communication with the client)
* [https://www.npmjs.com/package/js-yaml js-yaml] (optional; used only for Matrix bridge)
 
* [https://www.npmjs.com/package/uuid uuid] (optional; used only for Matrix bridge)
 
* [https://www.npmjs.com/package/matrix-bot-sdk matrix-bot-sdk] (optional; used only for Matrix bridge)
 
* [https://www.npmjs.com/package/sharp sharp] (optional; used only for Matrix bridge)
 
  
 
=== Terrain generator ===
 
=== Terrain generator ===
The [[AAGRINDER terrain generator]] includes parts of the library [http://libnoise.sourceforge.net/ libnoise], which is used for generating [[wikipedia:Coherence_(signal_processing)|coherent noise]].
+
The [[AAGRINDER terrain generator]] includes the library [http://libnoise.sourceforge.net/ libnoise], which is used for generating [[wikipedia:Coherence_(signal_processing)|coherent noise]].
  
 
== Production software ==
 
== Production software ==

Please note that all contributions to AAGRINDER wiki are considered to be released under the Creative Commons Attribution-ShareAlike (see AAGRINDER wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)