1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
//! Cot is an easy to use, modern, and fast web framework for Rust. It has
//! been designed to be familiar if you've ever used
//! [Django](https://www.djangoproject.com/), and easy to learn if you haven't.
//! It's a batteries-included framework built on top of
//! [axum](https://github.com/tokio-rs/axum).
//!
//! ## Features
//!
//! * **Easy to use API** — in many ways modeled after Django, Cot's API is
//! designed to be easy to use and intuitive. Sensible defaults make it for
//! easy rapid development, while the API is still empowering you when needed.
//! The documentation is a first-class citizen in Cot, making it easy to find
//! what you're looking for.
//! * **ORM integration** — Cot comes with its own ORM, allowing you to interact
//! with your database in a way that feels Rusty and intuitive. Rust types are
//! the source of truth, and the ORM takes care of translating them to and
//! from the database, as well as creating the migrations automatically.
//! * **Type safe** — wherever possible, Cot uses Rust's type system to prevent
//! common mistakes and bugs. Not only views are taking advantage of the
//! Rust's type system, but also the ORM, the admin panel, and even the
//! templates. All that to catch errors as early as possible.
//! * **Admin panel** — Cot comes with an admin panel out of the box, allowing
//! you to manage your app's data with ease. Adding new models to the admin
//! panel is stupidly simple, making it a great tool not only for rapid
//! development and debugging, but with its customization options, also for
//! production use.
//! * **Secure by default** — security should be opt-out, not opt-in. Cot takes
//! care of making your web apps secure by default, defending it against
//! common modern web vulnerabilities. You can focus on building your app, not
//! securing it.
//!
//! ## Guide
//!
//! This is an API reference for Cot, which might not be the best place to
//! start learning Cot. For a more gentle introduction, see the
//! [Cot guide](https://cot.rs/guide/latest/).
//!
//! ## Examples
//!
//! To see examples of how to use Cot, see the
//! [examples in the repository](https://github.com/cot-rs/cot/tree/master/examples).
extern crate self as cot;
// Not public API. Referenced by macro-generated code.
pub
pub use Body;
pub use ;
pub use Error;
pub use ;
pub use crate;
pub use crate;
/// A type alias for a result that can return a [`cot::Error`].
pub type Result<T> = Result;
/// A type alias for an HTTP status code.
pub type StatusCode = StatusCode;
/// A type alias for an HTTP method.
pub type Method = Method;