Skip to content

alex-mcneilly/concept-base

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Software Concepts Repository

An open-source collection of software concept definitions. This repository aims to document common software concepts in a structured way to help developers and designers create better software.

What is a Concept?

A software concept is a reusable unit of functionality that:

  • Is user-facing
  • Has a clear purpose
  • Can be understood independently
  • Has well-defined behavior
  • Is end-to-end (complete)
  • Is often familiar to users
  • Can be reused across applications

Repository Structure

concepts/
    authentication/     # Identity and access concepts
    content/           # Content creation and management
    organization/      # Organizational structures
    collaboration/     # Sharing and cooperation
    file-management/   # File operations
    media/            # Media handling
    communication/    # Communication patterns
    commerce/         # E-commerce concepts
    time/             # Time-related concepts
    data/             # Data operations
    security/         # Security patterns
    social/           # Social interactions
    gaming/           # Gaming mechanics
    analytics/        # Analysis and reporting
    document/         # Document handling
    workflow/         # Process management
    primitives/       # Primitive base concepts

Concept File Format

Each concept is defined in an XML file with the following structure:

<concept iteration="XX">
  <name>ConceptName</name>
  <purpose>Clear statement of the concept's purpose</purpose>
  <state>
    <component code_name="stateName" code_datatype="type">description</component>
  </state>
  <actions>
    <action>
      <name>ActionName</name>
      <precondition>required conditions</precondition>
      <effect>state changes</effect>
    </action>
  </actions>
  <operationalPrinciple>
    Description of how the concept works in practice
  </operationalPrinciple>
</concept>

Contributing

106 CONCEPTS SO FAR!

  1. Check if the concept already exists
  2. Use the template from templates/concept-template.xml
  3. Place the file in the appropriate category folder
  4. Ensure your concept meets all criteria
  5. Submit a pull request

Concept Criteria

License

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published