Browse Source

Updated documentation

Nathan Schneider 2 years ago
parent
commit
a59ad22370
2 changed files with 24 additions and 12 deletions
  1. 17 5
      README.md
  2. 7 7
      modpol_core/modules/template.lua

+ 17 - 5
README.md

@@ -1,10 +1,16 @@
 # Modular Politics for Minetest
 
-This is a mod for [Minetest](https://minetest.net) that enables diverse governance mechanisms. It seeks to implement the [Modular Politics](https://metagov.org/modpol) proposal. In the future, it will be possible to use this framework to simulate governance in a number of platform contexts.
+Modular Politics is an extension that enables diverse governance processes on multi-user platforms. It seeks to implement a theoretical framework, also called [Modular Politics](https://metagov.org/modpol), which proposes these design goals:
 
-This mod produces an API that can serve as a dependency for other mods that add specific governance functionalities. 
+* *Modularity*: Platform operators and community members should have the ability to construct systems by creating, importing, and arranging composable parts together as a coherent whole.
+* *Expressiveness*: The governance layer should be able to implement as wide a range of processes as possible.
+* *Portability*: Governance tools developed for one platform should be portable to another platform for reuse and adaptation.
+* *Interoperability*: Governance systems operating on different platforms and protocols should have the ability to interact with each other, sharing data and influencing each other's processes.
+
+Modular Politics produces a library that enables users to create or adapt their own modules that add specific governance functionalities. 
+
+This implementation is a mod for [Minetest](https://minetest.net), a free/open-source voxel game. It is designed to be easily adapted to other multi-user platforms that also employ Lua as an extension language.
 
-For background information, documentation, and the project roadmap, see [the wiki](https://gitlab.com/medlabboulder/modpol/-/wikis/home).
 
 ## Installation in Minetest
 
@@ -52,9 +58,15 @@ Other contributors include:
 * Robert Kiraly [[OldCoder](https://github.com/oldcoder/)] (ocutils.lua, storage-local.lua, project refactoring)
 * Skylar Hew (documentation)
 
-We'd love to welcome more contributors, particularly from the Minetest community! Please join the conversation in the [Issues](https://gitlab.com/medlabboulder/modpol/-/issues) or the [Minetest.net forum](https://forum.minetest.net/viewtopic.php?f=47&t=26037).
+We are grateful for initial support for this project from a residency with [The Bentway Conservancy](https://www.thebentway.ca/). Read about us in _[The Field Guide to Digital and/as Public Space](https://www.thebentway.ca/stories/field-guide/)_.
+
+
+## Contributing
+
+We'd love to welcome more contributors. Please join the conversation in the [Issues](https://gitlab.com/medlabboulder/modpol/-/issues), our [Matrix.org channel](https://matrix.to/#/#minetest-modpol:matrix.org), and the [Minetest.net forum](https://forum.minetest.net/viewtopic.php?f=47&t=26037).
+
+Learn more about the project and how to develop your own modules in [the wiki](https://gitlab.com/medlabboulder/modpol/-/wikis/home).
 
-We are grateful for support for this project from a residency with [The Bentway Conservancy](https://www.thebentway.ca/).
 
 ## Licenses
 

+ 7 - 7
modpol_core/modules/template.lua

@@ -1,12 +1,12 @@
---- change_modules
--- @module change_modules
+--- module_template
+-- @module module_template
 
 --- (Required): data table containing name and description of the module
 -- @field name "Human-readable name"
 -- @field slug "Same as module class name"
 -- @field desc "Description of the module"
 -- @field hide "Whether this is a hidden utility module"
-local change_modules = {
+local module_template = {
     name = "Module Human-Readable Name",
     slug = "template",
     desc = "Description of the module",
@@ -16,7 +16,7 @@ local change_modules = {
 --- (Required) Data for module
 -- Variables that module uses during the course of a process
 -- Can be blank
-change_modules.data = {
+module_template.data = {
 }
 
 --- (Required): config for module 
@@ -27,7 +27,7 @@ change_modules.data = {
 -- Default values set in config can be overridden
 -- @field field_1 ex: votes_required, default = 5
 -- @field field_2 ex: voting_type, default = "majority"
-change_modules.config = {
+module_template.config = {
     field_1 = 5
     field_2 = "majority"
 }
@@ -39,7 +39,7 @@ change_modules.config = {
 -- <li><code>self.id</code> (the process id of the module instance)</li>
 -- @param result (optional) Callback if this module is embedded in other modules
 -- @function initiate
-function change_modules:initiate(result)
+function module_template:initiate(result)
    -- call interaction functions here!
 
    -- concluding functions:
@@ -51,4 +51,4 @@ function change_modules:initiate(result)
 end
 
 --- (Required) Add to module table
-modpol.modules.change_modules = change_modules
+modpol.modules.module_template = module_template