├── src
├── env.d.ts
└── pages
│ ├── Developer.astro
│ ├── LoveNote.astro
│ ├── LoveNote.scss
│ ├── index.astro
│ ├── index.scss
│ └── DeveloperLove.astro
├── tsconfig.json
├── astro.config.mjs
├── .gitignore
├── package.json
├── public
└── favicon.svg
└── README.md
/src/env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "astro/tsconfigs/base"
3 | }
4 |
--------------------------------------------------------------------------------
/src/pages/Developer.astro:
--------------------------------------------------------------------------------
1 | ---
2 | ---
3 |
4 | {Astro.props.whyYouLoveCodeflow}
5 |
6 |
--------------------------------------------------------------------------------
/astro.config.mjs:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'astro/config';
2 |
3 | // https://astro.build/config
4 | export default defineConfig({});
5 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # build output
2 | dist/
3 |
4 | # dependencies
5 | node_modules/
6 |
7 | # logs
8 | npm-debug.log*
9 | yarn-debug.log*
10 | yarn-error.log*
11 | pnpm-debug.log*
12 |
13 |
14 | # environment variables
15 | .env
16 | .env.production
17 |
18 | # macOS-specific files
19 | .DS_Store
20 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@example/minimal",
3 | "type": "module",
4 | "version": "0.0.1",
5 | "private": true,
6 | "scripts": {
7 | "dev": "astro dev",
8 | "start": "astro dev",
9 | "build": "astro build",
10 | "preview": "astro preview",
11 | "astro": "astro"
12 | },
13 | "dependencies": {
14 | "astro": "^1.4.6",
15 | "sass": "^1.55.0"
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/pages/LoveNote.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import "./LoveNote.scss"
3 |
4 | const username = Astro.props.githubUsername ? Astro.props.githubUsername : 'octocat';
5 | let emoji = '💜'
6 | const firstChar = username.toLowerCase().charAt(0);
7 | if ('abcghijkl'.includes(firstChar)) {
8 | emoji = '💙';
9 | } else if ('mnopqr'.includes(firstChar)) {
10 | emoji = '💜';
11 | } else if ('stubwxyz'.includes(firstChar)) {
12 | emoji = '❤️';
13 | }
14 | ---
15 |
16 |
17 |
18 |
19 |

20 |
21 |
22 |
--------------------------------------------------------------------------------
/public/favicon.svg:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/src/pages/LoveNote.scss:
--------------------------------------------------------------------------------
1 | .message {
2 | margin-top: 50px;
3 | clear: both;
4 | img {
5 | position: absolute;
6 | left: -60px;
7 | bottom: 0px;
8 | height: 45px;
9 | width: 45px;
10 | border-radius: 50px;
11 | z-index: 999;
12 | }
13 | .comment {
14 | padding: 5px;
15 | }
16 | .from {
17 | position: absolute;
18 | bottom: -25px;
19 | width: max-content;
20 | font-size: 12px;
21 | display: flex;
22 | align-items: center;
23 | white-space: pre;
24 | .emoji {
25 | display: inline-block;
26 | vertical-align: middle;
27 | font-size: 20px;
28 | }
29 | a {
30 | text-decoration: none;
31 | font-weight: bold;
32 | color: #333;
33 | &:hover {
34 | text-decoration: underline;
35 | }
36 | }
37 | }
38 | margin-left: 60px;
39 | position: relative;
40 | padding: 5px 20px;
41 | background: #E5E5EA;
42 | border-radius: 25px;
43 | border-bottom-left-radius: 0;
44 | color: black;
45 | float: left;
46 | &::before {
47 | content: "";
48 | position: absolute;
49 | z-index: 2;
50 | bottom: 0;
51 | left: -10px;
52 | width: 12px;
53 | height: 12px;
54 | background: #E5E5EA;
55 | }
56 | &::after {
57 | content: "";
58 | position: absolute;
59 | z-index: 3;
60 | bottom: 0;
61 | left: -20px;
62 | width: 20px;
63 | height: 20px;
64 | background: white;
65 | border-bottom-right-radius: 10px;
66 | }
67 | }
68 |
--------------------------------------------------------------------------------
/src/pages/index.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import "./index.scss"
3 | import DeveloperLove from './DeveloperLove.astro';
4 | ---
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | I ❤️ Codeflow
13 |
41 |
42 |
43 | I love Codeflow.
44 |
50 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # ilovecodeflow.com
2 |
3 | Do you love [Codeflow](https://developer.stackblitz.com/codeflow/what-is-codeflow)? We do!
4 |
5 |
6 | ## What is Codeflow?
7 |
8 | Codeflow is a one-click integration with GitHub for seamless coding workflows.
9 |
10 | StackBlitz now helps you switch contexts seamlessly:
11 |
12 | - [**Codeflow IDE**](https://developer.stackblitz.com/codeflow/working-in-codeflow-ide) is a fully fledged desktop-grade dev environment capable of running your whole workflow - from production-level dev work to reviewing pull requests.
13 | - [**Web Publisher**](https://developer.stackblitz.com/codeflow/content-updates-with-web-publisher) is a publishing tool that makes editing docs or blogs pleasant thanks to a realtime preview of the changes.
14 | - [**pr.new**](https://developer.stackblitz.com/codeflow/using-pr-new) is a short URL that can be used on any repository to explore code, a branch or an issue, to review a PR, or even to edit a file, all in a live environment with a realtime preview.
15 | - [**CodeflowApp**](https://developer.stackblitz.com/codeflow/integrating-codeflowapp-bot) is a friendly bot, which provides a one-click link that spins up the whole environment for pull requests and issues. No more context-switching or branch-checkouts, just a new browser tab with a full IDE and a dev server running.
16 |
17 | ## Explore
18 |
19 | Excited to try it yourself? Try these:
20 | - 📝 Take Web Publisher for a spin by adding your name to [ilovecodeflow.com](https://ilovecodeflow.com/)!
21 | - 💻 Explore how we built [our docs site](https://pr.new/github.com/stackblitz/docs) in Codeflow IDE!
22 | - 🕵️ Review [this suspicious PR](https://pr.new/stackblitz/docs/pull/40) in Codeflow IDE
23 | - 🤖 See our CodeflowApp bot in action on [a PR](https://github.com/stackblitz/docs/pull/40#issue-1404169268)!
24 |
25 | ---
26 | This site was built with [Astro](https://astro.build/) 💙
27 |
--------------------------------------------------------------------------------
/src/pages/index.scss:
--------------------------------------------------------------------------------
1 |
2 | /*========== Structure ==========*/
3 | .btn-push {
4 | position: relative;
5 | top: 0px;
6 | font-weight: bolder;
7 | text-decoration: none;
8 | font-size: 18px;
9 | background: #f7f7f7;
10 | padding: 10px 30px;
11 | margin: 0 10px;
12 | border: 1px solid #c4c4c4;
13 | -webkit-border-radius: 5px;
14 | -moz-border-radius: 5px;
15 | border-radius: 5px;
16 | -webkit-box-shadow: 0px 5px 0px #c4c4c4;
17 | -moz-box-shadow: 0px 5px 0px #c4c4c4;
18 | -ms-box-shadow: 0px 5px 0px #c4c4c4;
19 | -o-box-shadow: 0px 5px 0px #c4c4c4;
20 | box-shadow: 0px 5px 0px #c4c4c4;
21 | color: #222;
22 | text-shadow: 1px 1px 1px #fff;
23 | -webkit-transition: All 250ms ease;
24 | -moz-transition: All 250ms ease;
25 | -o-transition: All 250ms ease;
26 | -ms-transition: All 250ms ease;
27 | transition: All 250ms ease;
28 | }
29 | /*========== Active State ==========*/
30 | .btn-push:active {
31 | position: relative;
32 | top: 5px;
33 | -webkit-box-shadow: none !important;
34 | -moz-box-shadow: none !important;
35 | -ms-box-shadow: none !important;
36 | -o-box-shadow: none !important;
37 | box-shadow: none !important;
38 | -webkit-transition: All 250ms ease;
39 | -moz-transition: All 250ms ease;
40 | -o-transition: All 250ms ease;
41 | -ms-transition: All 250ms ease;
42 | transition: All 250ms ease;
43 | }
44 | /*========== Navy ==========*/
45 | .btn-push.navy {
46 | background: #1b486d;
47 | border: 1px solid #07121b;
48 | -webkit-border-radius: 5px;
49 | -moz-border-radius: 5px;
50 | border-radius: 5px;
51 | -webkit-box-shadow: 0px 5px 0px #07121b;
52 | -moz-box-shadow: 0px 5px 0px #07121b;
53 | -ms-box-shadow: 0px 5px 0px #07121b;
54 | -o-box-shadow: 0px 5px 0px #07121b;
55 | box-shadow: 0px 5px 0px #07121b;
56 | color: #fff;
57 | text-shadow: 1px 1px 1px #07121b;
58 | }
59 | /*========== Green ==========*/
60 | .btn-push.green {
61 | background: #7cc576;
62 | color: #fff;
63 | border: 1px solid #46963f;
64 | -webkit-border-radius: 5px;
65 | -moz-border-radius: 5px;
66 | border-radius: 5px;
67 | -webkit-box-shadow: 0px 5px 0px #46963f;
68 | -moz-box-shadow: 0px 5px 0px #46963f;
69 | -ms-box-shadow: 0px 5px 0px #46963f;
70 | -o-box-shadow: 0px 5px 0px #46963f;
71 | box-shadow: 0px 5px 0px #46963f;
72 | text-shadow: 1px 1px 1px #46963f;
73 | }
74 | /*========== Red ==========*/
75 | .btn-push.red {
76 | background: #df4242;
77 | color: #fff;
78 | border: 1px solid #a01b1b;
79 | -webkit-border-radius: 5px;
80 | -moz-border-radius: 5px;
81 | border-radius: 5px;
82 | -webkit-box-shadow: 0px 5px 0px #a01b1b;
83 | -moz-box-shadow: 0px 5px 0px #a01b1b;
84 | -ms-box-shadow: 0px 5px 0px #a01b1b;
85 | -o-box-shadow: 0px 5px 0px #a01b1b;
86 | box-shadow: 0px 5px 0px #a01b1b;
87 | text-shadow: 1px 1px 1px #a01b1b;
88 | }
89 | /*========== Blue ==========*/
90 | .btn-push.blue {
91 | background: #2ec2dd;
92 | color: #fff;
93 | border: 1px solid #177c8e;
94 | -webkit-border-radius: 5px;
95 | -moz-border-radius: 5px;
96 | border-radius: 5px;
97 | -webkit-box-shadow: 0px 5px 0px #177c8e;
98 | -moz-box-shadow: 0px 5px 0px #177c8e;
99 | -ms-box-shadow: 0px 5px 0px #177c8e;
100 | -o-box-shadow: 0px 5px 0px #177c8e;
101 | box-shadow: 0px 5px 0px #177c8e;
102 | text-shadow: 1px 1px 1px #177c8e;
103 | }
104 | /*========== Orange ==========*/
105 | .btn-push.orange {
106 | background: #f57936;
107 | color: #fff;
108 | border: 1px solid #bc4809;
109 | -webkit-border-radius: 5px;
110 | -moz-border-radius: 5px;
111 | border-radius: 5px;
112 | -webkit-box-shadow: 0px 5px 0px #bc4809;
113 | -moz-box-shadow: 0px 5px 0px #bc4809;
114 | -ms-box-shadow: 0px 5px 0px #bc4809;
115 | -o-box-shadow: 0px 5px 0px #bc4809;
116 | box-shadow: 0px 5px 0px #bc4809;
117 | text-shadow: 1px 1px 1px #bc4809;
118 | }
119 |
--------------------------------------------------------------------------------
/src/pages/DeveloperLove.astro:
--------------------------------------------------------------------------------
1 | ---
2 | import LoveNote from './LoveNote.astro'
3 | // Add your name and message below!
4 |
5 | // Don't know where to begin? Don't worry - we'll help you 💕
6 | // Follow these steps:
7 | // 1. Highlight and copy lines 18-21 below.
8 | // 2. Paste at the end of the document.
9 | // 3. Replace "EricSimons" with your own GitHub username.
10 | // 4. Replace Eric's message with your own - remember about quotation marks!
11 | // 5. Verify the changes in the Preview window on the right.
12 | // 6. If you're satisfied, in the top-right corner, click on the "Propose changes" button and then "Fork & commit changes". A new browser tab will open.
13 | // 7. Click on the "Create pull request" and...
14 | // CONGRATULATIONS! 🥳 You've edited this file!
15 |
16 | ---
17 |
18 |
22 |
23 |
27 |
28 |
32 |
33 |
37 |
41 |
42 |
46 |
47 |
51 |
52 |
56 |
57 |
61 |
62 |
66 |
67 |
71 |
72 |
76 |
77 |
81 |
82 |
86 |
87 |
91 |
92 |
96 |
97 |
101 |
102 |
106 |
107 |
111 |
112 |
116 |
117 |
121 |
122 |
126 |
127 |
131 |
135 |
136 |
140 |
141 |
145 |
146 |
150 |
151 |
155 |
156 |
160 |
161 |
165 |
166 |
170 |
171 |
175 |
176 |
180 |
181 |
185 |
186 |
190 |
191 |
195 |
196 |
200 |
201 |
205 |
206 |
210 |
211 |
215 |
216 |
220 |
221 |
225 |
226 |
230 |
231 |
235 |
236 |
240 |
241 |
245 |
246 |
250 |
251 |
255 |
256 |
260 |
261 |
265 |
266 |
270 |
271 |
275 |
276 |
280 |
281 |
285 |
286 |
290 |
291 |
295 |
296 |
300 |
301 |
305 |
306 |
310 |
311 |
315 |
316 |
320 |
321 |
325 |
326 |
330 |
331 |
335 |
336 |
340 |
341 |
345 |
346 |
350 |
351 |
355 |
356 |
360 |
361 |
365 |
366 |
370 |
371 |
375 |
376 |
380 |
381 |
385 |
386 |
390 |
391 |
395 |
396 |
400 |
401 |
405 |
406 |
410 |
411 |
415 |
416 |
420 |
421 |
425 |
426 |
430 |
431 |
435 |
436 |
440 |
441 |
445 |
446 |
450 |
451 |
455 |
456 |
460 |
461 |
465 |
466 |
470 |
471 |
475 |
476 |
480 |
481 |
485 |
486 |
490 |
491 |
495 |
496 |
500 |
501 |
505 |
506 |
510 |
511 |
515 |
516 |
520 |
521 |
525 |
526 |
530 |
531 |
535 |
536 |
540 |
541 |
545 |
546 |
550 |
551 |
555 |
556 |
560 |
561 |
565 |
566 |
570 |
571 |
575 |
576 |
580 |
581 |
585 |
586 |
590 |
591 |
595 |
596 |
600 |
601 |
605 |
606 |
610 |
611 |
615 |
616 |
620 |
621 |
625 |
626 |
630 |
631 |
635 |
636 |
640 |
641 |
645 |
646 |
647 |
651 |
652 |
656 |
657 |
661 |
662 |
666 |
667 |
671 |
672 |
676 |
677 |
681 |
682 |
686 |
687 |
691 |
692 |
696 |
697 |
701 |
702 |
706 |
707 |
711 |
712 |
716 |
717 |
721 |
722 |
726 |
727 |
731 |
732 |
736 |
737 |
741 |
742 |
746 |
747 |
751 |
752 |
756 |
757 |
761 |
762 |
766 |
767 |
771 |
772 |
776 |
777 |
781 |
782 |
786 |
787 |
791 |
792 |
796 |
797 |
801 |
802 |
806 |
807 |
811 |
812 |
816 |
817 |
821 |
822 |
826 |
827 |
831 |
832 |
836 |
837 |
841 |
842 |
846 |
847 |
851 |
852 |
856 |
857 |
861 |
862 |
866 |
867 |
871 |
872 |
876 |
877 |
881 |
882 |
886 |
887 |
891 |
892 |
896 |
897 |
901 |
902 |
906 |
907 |
911 |
912 |
916 |
917 |
921 |
922 |
926 |
927 |
931 |
932 |
936 |
937 |
941 |
942 |
946 |
947 |
951 |
952 |
956 |
957 |
960 |
961 |
965 |
966 |
970 |
971 |
975 |
976 |
980 |
981 |
985 |
986 |
990 |
991 |
995 |
996 |
1000 |
1001 |
1005 |
1006 |
1010 |
1011 |
1015 |
1016 |
1020 |
1021 |
1025 |
1026 |
1030 |
1031 |
1032 |
1036 |
1037 |
1041 |
1042 |
1046 |
1047 |
1051 |
1052 |
1056 |
1057 |
1061 |
1062 |
1066 |
1067 |
1071 |
1072 |
1076 |
1077 |
1081 |
1082 |
1086 |
1087 |
1091 |
1092 |
1096 |
1097 |
1101 |
1102 |
1106 |
1107 |
1111 |
1112 |
1116 |
1117 |
1121 |
1122 |
1126 |
1127 |
1132 |
1133 |
1137 |
1138 |
1142 |
1146 |
1147 |
1151 |
1152 |
1156 |
1157 |
1161 |
1162 |
1166 |
1167 |
1171 |
1175 |
1176 |
1180 |
1181 |
1185 |
1186 |
1190 |
1191 |
1195 |
1196 |
1200 |
1201 |
1205 |
1206 |
1210 |
1211 |
1215 |
1216 |
1220 |
1224 |
--------------------------------------------------------------------------------