- Installing Ambition
- Creating your first application
- Controllers and Views
- Ambition Templates
- Accessing and Storing Data
- Extending your Application with Plugins
- Integrating with Almanna
- Web Forms and Helpers
- Testing Your Application
- Frequently Asked Questions (FAQ)
- Handy Recipes and How Tos
- Support Forum on Google Groups
Creating your first application
Once the Ambition Framework is installed, most of the work scaffolding and running your application is done with the
ambition application. You'll be using this tool from your command line to get started.
Change to a directory you'd like to use to store your Ambition projects. Next, figure out a name for your application. Keep it as one word, without spaces, and use
ambition to scaffold your application. This will create a new directory in whatever directory you are currently in, and it will be very wordy about it.
[/home/foo/projects] $ ambition new Foo Created default: Foo/.ambition Created default: Foo/.gitignore Created default: Foo/CMakeLists.txt Created default: Foo/cmake/FindVala.cmake Created default: Foo/cmake/ValaVersion.cmake Created default: Foo/cmake/README Created default: Foo/cmake/ValaPrecompile.cmake Created default: Foo/cmake/Makefile Created default: Foo/cmake/README.Vala.rst Created default: Foo/cmake/ParseArguments.cmake Created default: Foo/cmake/Tests.cmake Created default: Foo/cmake/GObjectIntrospectionMacros.cmake Created default: Foo/cmake/GSettings.cmake Created default: Foo/cmake/Translations.cmake Created default: Foo/src/CMakeLists.txt Created default: Foo/src/Application.vala Created default: Test/src/Main.vala Created default: Foo/src/Controller/Root.vala Created default: Foo/src/View/Template/Root/index.vtmpl Created default: Foo/test/CMakeLists.txt Created default: Test/test/CMakeLists.txt Created default: Test/test/InitializeTests.vala Created default: Test/test/ApplicationTest.vala Created default: Foo/config/foo.conf Project Foo created. Type "cd Foo", and then "ambition run" to test. [/home/foo/projects] $
Running your first application
Now that your project is created, it's ready to try out for the first time. You'll just need to build your application for the first time using the instructions
ambition provided. Note that some warnings may be thrown -- this is normal with some Vala code.
[/home/foo/projects] $ cd Foo [/home/foo/projects/Foo] $ ambition run ( info) Resolving dependencies... ( info) Running cmake... ( info) Building project... ( info) Executing application... ( info) Registered plugin 'Session'. (debug) Routes: (debug) G ^\/$ /root/index (debug) G ^\/favicon.ico$ /static (debug) G ^/static /static ( info) Starting Raw engine on port 8099.
Now, your web application is running! A few debug lines are displayed for you, showing you the current status of your application. In this case, we're using the Session plugin to provide client sessions to the end user, and we have three "routes" in place. The root goes to the "Root" controller and the "index" method, and /favicon.ico and anything under /static are handled by the "static" controller. The "G" stands for GET, meaning those routes only respond to HTTP GET requests. The "Raw" engine is available by default, which provides a complete web server implementation to test against, and can be accessed on port 8099.
To take a look at the result, launch your favorite web browser, and enter "http://localhost:8099".