Skip to content

Commit 07e4969

Browse files
committed
docs(examples): add practical Vix app examples
1 parent d921793 commit 07e4969

53 files changed

Lines changed: 22811 additions & 9285 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.vitepress/config.mjs

Lines changed: 169 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -452,6 +452,61 @@ const vixApp = {
452452
],
453453
};
454454

455+
const middleware = {
456+
text: "Middleware",
457+
collapsed: false,
458+
items: [
459+
{
460+
text: "Overview",
461+
link: "/modules/middleware/",
462+
},
463+
{
464+
text: "Quick Start",
465+
link: "/modules/middleware/quick-start",
466+
},
467+
{
468+
text: "App Integration",
469+
link: "/modules/middleware/app-integration",
470+
},
471+
{
472+
text: "Core Concepts",
473+
link: "/modules/middleware/concepts",
474+
},
475+
{
476+
text: "Basics",
477+
link: "/modules/middleware/basics",
478+
},
479+
{
480+
text: "Security",
481+
link: "/modules/middleware/security",
482+
},
483+
{
484+
text: "Authentication",
485+
link: "/modules/middleware/authentication",
486+
},
487+
{
488+
text: "Parsers",
489+
link: "/modules/middleware/parsers",
490+
},
491+
{
492+
text: "HTTP Cache",
493+
link: "/modules/middleware/http-cache",
494+
},
495+
{
496+
text: "Performance",
497+
link: "/modules/middleware/performance",
498+
},
499+
{
500+
text: "Observability",
501+
link: "/modules/middleware/observability",
502+
},
503+
{
504+
text: "API Reference",
505+
link: "/modules/middleware/api-reference",
506+
},
507+
],
508+
};
509+
455510
const cli = {
456511
text: "CLI",
457512
collapsed: true,
@@ -697,51 +752,142 @@ const cli = {
697752

698753
const examples = {
699754
text: "Examples",
700-
collapsed: true,
755+
collapsed: false,
701756
items: [
702757
{
703758
text: "Overview",
704759
link: "/examples/",
705760
},
761+
706762
{
707-
text: "Hello HTTP",
708-
link: "/examples/hello-http",
709-
},
710-
{
711-
text: "JSON API",
712-
link: "/examples/json-api",
763+
text: "Getting Started",
764+
collapsed: false,
765+
items: [
766+
{
767+
text: "Hello App",
768+
link: "/examples/hello-app",
769+
},
770+
{
771+
text: "JSON API",
772+
link: "/examples/json-api",
773+
},
774+
{
775+
text: "Production Bootstrap",
776+
link: "/examples/production-bootstrap",
777+
},
778+
],
713779
},
780+
714781
{
715782
text: "Middleware",
716-
link: "/examples/middleware",
783+
collapsed: false,
784+
items: [
785+
{
786+
text: "Middleware API",
787+
link: "/examples/middleware-api",
788+
},
789+
{
790+
text: "HTTP Cache",
791+
link: "/examples/http-cache",
792+
},
793+
],
717794
},
795+
718796
{
719-
text: "Authentication",
720-
link: "/examples/auth",
797+
text: "Request Parsing",
798+
collapsed: true,
799+
items: [
800+
{
801+
text: "Multipart Upload",
802+
link: "/examples/multipart-upload",
803+
},
804+
{
805+
text: "Form Parser",
806+
link: "/examples/form-parser",
807+
},
808+
],
721809
},
810+
722811
{
723-
text: "Database",
724-
link: "/examples/database",
812+
text: "Sessions and Cookies",
813+
collapsed: true,
814+
items: [
815+
{
816+
text: "Cookies",
817+
link: "/examples/cookies",
818+
},
819+
{
820+
text: "Session Counter",
821+
link: "/examples/session-counter",
822+
},
823+
],
725824
},
825+
726826
{
727-
text: "WebSocket",
728-
link: "/examples/websocket",
827+
text: "Authentication",
828+
collapsed: true,
829+
items: [
830+
{
831+
text: "API Key Auth",
832+
link: "/examples/auth-api-key",
833+
},
834+
{
835+
text: "JWT Auth",
836+
link: "/examples/auth-jwt",
837+
},
838+
{
839+
text: "RBAC",
840+
link: "/examples/auth-rbac",
841+
},
842+
],
729843
},
844+
730845
{
731-
text: "Cache",
732-
link: "/examples/cache",
846+
text: "Static Files",
847+
collapsed: false,
848+
items: [
849+
{
850+
text: "Static Site",
851+
link: "/examples/static-site",
852+
},
853+
],
733854
},
855+
734856
{
735-
text: "Sync",
736-
link: "/examples/sync",
857+
text: "Realtime",
858+
collapsed: false,
859+
items: [
860+
{
861+
text: "WebSocket Chat",
862+
link: "/examples/websocket-chat",
863+
},
864+
],
737865
},
866+
738867
{
739-
text: "P2P",
740-
link: "/examples/p2p",
868+
text: "Database",
869+
collapsed: false,
870+
items: [
871+
{
872+
text: "SQLite API",
873+
link: "/examples/sqlite-api",
874+
},
875+
],
741876
},
877+
742878
{
743-
text: "Production App",
744-
link: "/examples/production-app",
879+
text: "Async",
880+
collapsed: false,
881+
items: [
882+
{
883+
text: "Background Task",
884+
link: "/examples/background-task",
885+
},
886+
{
887+
text: "Async App",
888+
link: "/examples/async-app",
889+
},
890+
],
745891
},
746892
],
747893
};
@@ -965,60 +1111,6 @@ const modules = {
9651111
},
9661112
],
9671113
},
968-
{
969-
text: "Middleware",
970-
collapsed: true,
971-
items: [
972-
{
973-
text: "Overview",
974-
link: "/modules/middleware/",
975-
},
976-
{
977-
text: "Quick Start",
978-
link: "/modules/middleware/quick-start",
979-
},
980-
{
981-
text: "Core Concepts",
982-
link: "/modules/middleware/concepts",
983-
},
984-
{
985-
text: "Basics",
986-
link: "/modules/middleware/basics",
987-
},
988-
{
989-
text: "Security",
990-
link: "/modules/middleware/security",
991-
},
992-
{
993-
text: "Authentication",
994-
link: "/modules/middleware/authentication",
995-
},
996-
{
997-
text: "Parsers",
998-
link: "/modules/middleware/parsers",
999-
},
1000-
{
1001-
text: "Performance",
1002-
link: "/modules/middleware/performance",
1003-
},
1004-
{
1005-
text: "Observability",
1006-
link: "/modules/middleware/observability",
1007-
},
1008-
{
1009-
text: "HTTP Cache",
1010-
link: "/modules/middleware/http-cache",
1011-
},
1012-
{
1013-
text: "App Integration",
1014-
link: "/modules/middleware/app-integration",
1015-
},
1016-
{
1017-
text: "API Reference",
1018-
link: "/modules/middleware/api-reference",
1019-
},
1020-
],
1021-
},
10221114
{
10231115
text: "Async",
10241116
collapsed: true,
@@ -1428,6 +1520,7 @@ const sidebar = [
14281520
vixBook,
14291521
guides,
14301522
vixApp,
1523+
middleware,
14311524
cli,
14321525
examples,
14331526
apiReference,

0 commit comments

Comments
 (0)