Implement a Service-Oriented Platform that supports the following resources and api endpoints
Resources
Assembly: an assembly is a collection of Connected Services, each managing/hosting one or more Resources, which are used to support one or more social activism Campaigns around an Issue
Issue: an issue is the starting point of a decision making process by which activists and citizens can engage in collaborative making and development of proposals, deliberation and voting to promote come up with consensual solutions to address the issue.
Campaigns: a campaign is a time limited set of enabling capabilities (e.g., mapping resources, visualizing information and data, organizing and mobilizing working groups) that can help in supporting decision making capabilities (e.g., proposal making, proposal development, voting and deliberation).
Initial set of READ ONLY Endpoints
/assemblies => return the list of assemblies with all their related information
Resources must include information of the precise services and tools that will be called after they are exchanged through one or other endpoint. For the moment, all examples will be done using loomio and Agora.
Other Concepts
AppCivist Capabilities: services used by an assembly support a range of civic engagement and social activism practices that we call capabilities. There are two categories of AppCivist Capabilities:
Decision Making Capabilities: are used to support a process of brainstorming ideas, creating proposals and eventually reaching a consensus regarding how to address a particular issue (e.g., what to do with the empty lot at telegraph and bancroft).
Supporting Capabilities: are used to support decision making capabilities and refer to things like collecting and mapping evidence, visualizing data, organizing and mobilizing groups, etc.
Service: an actual service or operation, used to implement part of an (or all) AppCivist Capability
Implement a Service-Oriented Platform that supports the following resources and api endpoints
Resources
Initial set of READ ONLY Endpoints
/assemblies
=> return the list of assemblies with all their related information/assembly/{assembly_id}/issues
/assembly/{assembly_id}/issue/{issue_id}/campaigns
/assembly/{assembly_id}/issue/{issue_id}/campaign/{campaign_id}
/assembly/{assembly_id}/services
/assembly/{assembly_id}/service/{service_id}/operations
/assembly/{assembly_id}/service/{service_id}/operation/{operation_id}
Notes
Resources must include information of the precise services and tools that will be called after they are exchanged through one or other endpoint. For the moment, all examples will be done using loomio and Agora.
Other Concepts