spec-driven,
production-ready
code generation
spec-driven,
production-ready
code generation
spec-driven,
production-ready
code generation
*codeplain is an ai-powered code generation platform that turns production-ready software from specifications written in ***plain language.
*codeplain is an ai-powered code generation platform that turns production-ready software from specifications written in ***plain language.
*codeplain is an ai-powered code generation platform that turns production-ready software from specifications written in ***plain language.
SIGN UP
install *codeplain on macOS and Linux
curl -fsSL https://codeplain.ai/install.sh | bash
curl -fsSL https://codeplain.ai/install.sh | bash
curl -fsSL https://codeplain.ai/install.sh | bash
specification in ***plain
trello-client.plain
---
description: 'Trello client application'
import:
- python-console-app-template
- saas-client-reqs
---
***definitions***
- :API: is the API of the 3rd party SaaS service.
- :ListOfUsers: is the list of users of the 3rd party SaaS service.
***implementation reqs***
- The resource [trello-openapi.json](trello-openapi.json) describes :API:.
***test reqs***
- The resource [trello-credentials.json](trello-credentials.json) contains credentials that can be used for testing.
***functional specs***
- :App: should take credentials json as the only positional argument.
- :App: should authenticate with :API:.
- :App: should fetch :ListOfUsers: from :API: and print them to the console.
*codeplain generated python code
trello-client.py
def main(args=None):
try:
logger = setup_logging()
logger.info("Application started")
args = parse_arguments(args)
credentials = load_credentials(args.credentials_file, logger)
logger.info("Credentials loaded successfully")
session = authenticate_with_intercom(
credentials['access_token'], logger
)
logger.info("Authentication successful")
users = fetch_intercom_users(session, logger)
print("Intercom Users:")
for user in users:
print(f"Name: {user.get('name', 'N/A')}, Email: {user.get('email', 'N/A')}")
except Exception as e:
logger.error(f"An error occurred: {e}", exc_info=True)
saas integration
task manager
specification in ***plain
trello-client.plain
---
description: 'Trello client application'
import:
- python-console-app-template
- saas-client-reqs
---
***definitions***
- :API: is the API of the 3rd party SaaS service.
- :ListOfUsers: is the list of users of the 3rd party SaaS service.
***implementation reqs***
- The resource [trello-openapi.json](trello-openapi.json) describes :API:.
***test reqs***
- The resource [trello-credentials.json](trello-credentials.json) contains credentials that can be used for testing.
***functional specs***
- :App: should take credentials json as the only positional argument.
- :App: should authenticate with :API:.
- :App: should fetch :ListOfUsers: from :API: and print them to the console.
*codeplain generated python code
trello-client.py
def main(args=None):
try:
logger = setup_logging()
logger.info("Application started")
args = parse_arguments(args)
credentials = load_credentials(args.credentials_file, logger)
logger.info("Credentials loaded successfully")
session = authenticate_with_intercom(
credentials['access_token'], logger
)
logger.info("Authentication successful")
users = fetch_intercom_users(session, logger)
print("Intercom Users:")
for user in users:
print(f"Name: {user.get('name', 'N/A')}, Email: {user.get('email', 'N/A')}")
except Exception as e:
logger.error(f"An error occurred: {e}", exc_info=True)
saas integration
task manager
specification in ***plain
trello-client.plain
---
description: 'Trello client application'
import:
- python-console-app-template
- saas-client-reqs
---
***definitions***
- :API: is the API of the 3rd party SaaS service.
- :ListOfUsers: is the list of users of the 3rd party SaaS service.
***implementation reqs***
- The resource [trello-openapi.json](trello-openapi.json) describes :API:.
***test reqs***
- The resource [trello-credentials.json](trello-credentials.json) contains credentials that can be used for testing.
***functional specs***
- :App: should take credentials json as the only positional argument.
- :App: should authenticate with :API:.
- :App: should fetch :ListOfUsers: from :API: and print them to the console.
*codeplain generated python code
trello-client.py
def main(args=None):
try:
logger = setup_logging()
logger.info("Application started")
args = parse_arguments(args)
credentials = load_credentials(args.credentials_file, logger)
logger.info("Credentials loaded successfully")
session = authenticate_with_intercom(
credentials['access_token'], logger
)
logger.info("Authentication successful")
users = fetch_intercom_users(session, logger)
print("Intercom Users:")
for user in users:
print(f"Name: {user.get('name', 'N/A')}, Email: {user.get('email', 'N/A')}")
except Exception as e:
logger.error(f"An error occurred: {e}", exc_info=True)
saas integration
task manager
review the specification, not the code
review the specification, not the code
with ***plain, your specifications become the source of truth. *codeplain turns structured english into production-ready software with full test coverage—no code review required.
with ***plain, your specifications become the source of truth. *codeplain turns structured english into production-ready software with full test coverage—no code review required.
automatically tested,
maintainable by design
automatically tested,
maintainable by design
automatically tested,
maintainable by design
every ***plain spec includes testing requirements. *codeplain auto-generates unit and conformance tests and executes them within your infrastructure.
every ***plain spec includes testing requirements. *codeplain auto-generates unit and conformance tests and executes them within your infrastructure.
every ***plain spec includes testing requirements. *codeplain auto-generates unit and conformance tests and executes them within your infrastructure.
test results
test results
passed
passed
authentication flow
authentication flow
data validation
data validation
api endpoints
api endpoints
ran all test suites.
ran all test suites.
collaborative ai-powered software development
collaborative ai-powered software development
collaborative ai-powered software development
ai assists every step of development, enabling engineers to collaborate more effectively through shared specifications, automated workflows, and consistent code generation.
ai assists every step of development, enabling engineers to collaborate more effectively through shared specifications, automated workflows, and consistent code generation.
ai assists every step of development, enabling engineers to collaborate more effectively through shared specifications, automated workflows, and consistent code generation.
specs are the new source code
specs are the new source code
specs are the new source code
*codeplain turns structured specifications into fully tested, production-ready software—eliminating the need to read or review generated code.
*codeplain turns structured specifications into fully tested, production-ready software—eliminating the need to read or review generated code.
*codeplain turns structured specifications into fully tested, production-ready software—eliminating the need to read or review generated code.
specifications
language built for ai code generation
language built for ai code generation
language built for ai code generation
***plain is a structured english specification language purpose-built for ai-powered code generation. It abstracts implementation details to make generated software reliable, testable, and easy to maintain.
***plain is a structured english specification language purpose-built for ai-powered code generation. It abstracts implementation details to make generated software reliable, testable, and easy to maintain.
***plain is a structured english specification language purpose-built for ai-powered code generation. It abstracts implementation details to make generated software reliable, testable, and easy to maintain.
***definitions***
***definitions***
***implementation reqs***
***implementation reqs***
***test reqs***
***test reqs***
***functional reqs***
***functional reqs***
stay in the loop
stay in the loop
stay in the loop
sign up to follow our progress and be the first to try the service when we open access.
sign up to follow our progress and be the first to try the service when we open access.
codeplain, inc., 1160 battery street east,
suite 100, san francisco, ca 94111