Skip to content

Commit df0ebfa

Browse files
Take comments into account and fix various issues.
1 parent b54cef5 commit df0ebfa

16 files changed

+159
-204
lines changed
Lines changed: 77 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,90 +1,88 @@
11
import styles from "./styles.module.css";
22

33
export default function GetAQuoteForm() {
4-
return (
5-
<>
6-
<form
7-
action="https://formspree.io/f/xjvndwdq"
8-
method="POST"
9-
className={styles.get_a_quote_form}
10-
>
11-
<div className="form-group">
12-
<div>
13-
<label className={styles.get_a_quote_form_label}>Project name</label>
14-
</div>
15-
<div className={styles.input_container}>
16-
<input
17-
type="text"
18-
className={styles.small_input}
19-
name="Project name"
20-
id="Project name"
21-
/>
22-
</div>
23-
<div>
24-
<label className={styles.get_a_quote_form_label}>Your name</label>
25-
</div>
26-
<div className={styles.input_container}>
27-
<input
28-
type="text"
29-
className={styles.small_input}
30-
name="name"
31-
id="name"
32-
/>
33-
</div>
4+
return (
5+
<div className="flex-horizontally-centered">
6+
<form
7+
action="https://formspree.io/f/xjvndwdq"
8+
method="POST"
9+
className={styles.get_a_quote_form}
10+
>
11+
<div className="form-group">
12+
<div>
13+
<label className={styles.get_a_quote_form_label}>Project name</label>
14+
</div>
15+
<div className={styles.input_container}>
16+
<input
17+
type="text"
18+
className={styles.small_input}
19+
name="Project name"
20+
id="Project name"
21+
/>
3422
</div>
35-
<div className="form-group">
36-
<div>
37-
<label className={styles.get_a_quote_form_label}>Your company</label>
38-
</div>
39-
<div className={styles.input_container}>
40-
<input className={styles.small_input} name="company" id="company" />
41-
</div>
23+
<div>
24+
<label className={styles.get_a_quote_form_label}>Your name</label>
4225
</div>
43-
<div className="form-group">
44-
<div>
45-
<label className={styles.get_a_quote_form_label}>Your email</label>
46-
</div>
47-
<div className={styles.input_container}>
48-
<input
49-
type="text"
50-
className={styles.small_input}
51-
name="email"
52-
id="email"
53-
/>
54-
</div>
26+
<div className={styles.input_container}>
27+
<input
28+
type="text"
29+
className={styles.small_input}
30+
name="name"
31+
id="name"
32+
/>
5533
</div>
56-
<div className="form-group">
57-
<div>
58-
<label className={styles.get_a_quote_form_label}>Your phone number</label>
59-
</div>
60-
<div className={styles.input_container}>
61-
<input
62-
type="text"
63-
className={styles.small_input}
64-
name="phone-number"
65-
id="phone-number"
66-
/>
67-
</div>
34+
</div>
35+
<div className="form-group">
36+
<div>
37+
<label className={styles.get_a_quote_form_label}>Your company</label>
6838
</div>
69-
<div className="form-group">
70-
<div>
71-
<label className={styles.get_a_quote_form_label}>Your message to us</label>
72-
</div>
73-
<div>
74-
<textarea
75-
className={styles.large_input}
76-
placeholder="Please explain your interests in funding this project"
77-
name="message"
78-
id="message"
79-
></textarea>
80-
</div>
39+
<div className={styles.input_container}>
40+
<input className={styles.small_input} name="company" id="company" />
8141
</div>
42+
</div>
43+
<div className="form-group">
8244
<div>
83-
<div className={"flex-full-centered" + " "+ styles.send_button_container}>
84-
<input type="submit" value="SEND" className={"link-to-button" + " " + styles.send_button} />
45+
<label className={styles.get_a_quote_form_label}>Your email</label>
46+
</div>
47+
<div className={styles.input_container}>
48+
<input
49+
type="text"
50+
className={styles.small_input}
51+
name="email"
52+
id="email"
53+
/>
8554
</div>
55+
</div>
56+
<div className="form-group">
57+
<div>
58+
<label className={styles.get_a_quote_form_label}>Your phone number</label>
59+
</div>
60+
<div className={styles.input_container}>
61+
<input
62+
type="text"
63+
className={styles.small_input}
64+
name="phone-number"
65+
id="phone-number"
66+
/>
67+
</div>
68+
</div>
69+
<div className="form-group">
70+
<div>
71+
<label className={styles.get_a_quote_form_label}>Your message to us</label>
72+
</div>
73+
<div>
74+
<textarea
75+
className={styles.large_input}
76+
placeholder="Please explain your interests in funding this project"
77+
name="message"
78+
id="message"
79+
></textarea>
8680
</div>
87-
</form>
88-
</>
89-
);
90-
}
81+
</div>
82+
<div className={"flex-full-centered" + " " + styles.send_button_container}>
83+
<input type="submit" value="SEND" className={"link-to-button" + " " + styles.send_button} />
84+
</div>
85+
</form>
86+
</div>
87+
);
88+
}

src/components/fundable/GetAQuotePage.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,17 @@ import FundableProjects from ".";
1111
function GetAQuoteComponent({ project }) {
1212
return (
1313
<div className={styles.get_a_quote_dialog}>
14-
<div className={"row" + " " + "flex-horizontally-centered"}>
14+
<div className={"row"}>
1515
<div className={"col col--6" + " " + styles.get_a_quote_text_col_desktop}>
1616
<LargeProjectCardContent project={project} />
1717
</div>
1818
<div className={"col col--5 col--offset-1" + " " + styles.get_a_quote_form_col_desktop}>
1919
<h1 className={"padding-none"}> Get a quote</h1>
20-
<div className="flex-horizontally-centered"><GetAQuoteForm /></div>
20+
<div ><GetAQuoteForm /></div>
2121
</div>
2222
<div className={"col col--12" + " " + styles.get_a_quote_form_col_mobile}>
2323
<h1 className={"padding-none text--center"}> Get a quote</h1>
24-
<div className="flex-horizontally-centered"><GetAQuoteForm /></div>
24+
<div><GetAQuoteForm /></div>
2525
</div>
2626
</div>
2727
</div >

src/components/fundable/LargeProjectCard.tsx

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -26,24 +26,11 @@ export function LargeProjectCardContent({ project }) {
2626
<div className="row">
2727
<div className="col col--12">
2828
<div className={styles.large_project_card_text_container}>
29-
<div className={styles.large_project_card_section_title}>Overview</div>
3029
<div className={styles.large_project_card_description_container}>
3130
<div className={styles.large_project_card_description}>
3231
<project.description />
3332
</div>
3433
</div>
35-
<div className={styles.large_project_card_section_title}>Option A</div>
36-
<div className={styles.large_project_card_option}>
37-
{project.optionA}
38-
</div>
39-
<div className={styles.large_project_card_section_title}>Option B</div>
40-
<div className={styles.large_project_card_option}>
41-
{project.optionB}
42-
</div>
43-
<div className={styles.large_project_card_section_title}>Custom Option</div>
44-
<div className={styles.large_project_card_option}>
45-
{project.customOption}
46-
</div>
4734
</div>
4835
</div>
4936
</div>
@@ -56,11 +43,9 @@ export default function LargeProjectCard({ project }) {
5643
<LargeProjectCardContent project={project} />
5744
<div className="row">
5845
<div className="col col--12">
59-
<div className={styles.large_project_card_contact_text}>Are you interested in this project? Either entirely or partially, contact us for more information on how to help us fund it.</div>
6046
<div><LinkToGetAQuote label={"GET A QUOTE"} pageName={project.pageName} /></div>
6147
</div>
6248
</div>
6349
</div>
64-
6550
);
6651
}

src/components/fundable/MenuSideBar.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import styles from "./styles.module.css";
44

55
const sections = [
66
{ id: 'jupyter-ecosystem', label: 'Jupyter Ecosystem' },
7-
{ id: 'project-management', label: 'Project Management' },
7+
{ id: 'package-management', label: 'Package Management' },
88
];
99

1010
export default function MenuSideBar() {

src/components/fundable/SmallProjectCard.tsx

Lines changed: 19 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,6 @@ export function SmallProjectCard({ project }) {
3030
>
3131
{project.title}
3232
</div>
33-
<div
34-
className={styles.project_catch_up_phrase}
35-
>
36-
{project.catchUpPhrase}
37-
</div>
3833
<div className={styles.project_information_container}>
3934
<div className="flex-full-centered">
4035
<BlueCaretIcon />
@@ -47,9 +42,6 @@ export function SmallProjectCard({ project }) {
4742
</div>
4843
</div>
4944
</div>
50-
<div>
51-
<LinkToMoreInformation label={"Read more"} pageName={project.pageName} />
52-
</div>
5345
<div className={styles.project_information_container}>
5446
<div className="flex-full-centered">
5547
<BlueCaretIcon />
@@ -78,37 +70,34 @@ export function SmallProjectCard({ project }) {
7870
<div className={styles.small_project_card_indicative_price_text}>
7971
Indicative price
8072
</div>
73+
<div className={styles.small_project_card_funded_at_text}>
74+
Funded at {project.currentFundingPercentage} %
75+
</div>
8176
<div>
82-
<div className={styles.small_project_card_financed_at_text}>
83-
Financed at {project.currentFundingPercentage} %
84-
</div>
85-
<div>
86-
<ProgressBar value={project.currentFundingPercentage} color={'var(--ifm-color-secondary-s1'} />
87-
</div>
88-
<div className={styles.shareable_container}>
89-
<div><FundersIcon width="35px" height="26px" /></div>
90-
<div className={styles.shareable_text}>{project.maxNbOfFunders === 1
91-
? 'Not shareable between funders'
92-
: `Shareable between ${project.maxNbOfFunders} funders`
93-
}
94-
</div>
77+
<ProgressBar value={project.currentFundingPercentage} color={'var(--ifm-color-secondary-s1'} />
78+
</div>
79+
<div className={styles.shareable_container}>
80+
<div><FundersIcon width="35px" height="26px" /></div>
81+
<div className={styles.shareable_text}>{project.maxNbOfFunders === 1
82+
? 'Not shareable between funders'
83+
: `Shareable between ${project.maxNbOfFunders} funders`
84+
}
9585
</div>
96-
<div className={styles.shareable_container}>
97-
<div><DollarIcon width="35px" height="26px" /></div>
98-
<div className={styles.shareable_text}>
99-
{project.currentNbOfFunders === 0
100-
? 'The project is not supported yet'
101-
: `Supported by ${project.currentNbOfFunders}
86+
</div>
87+
<div className={styles.shareable_container}>
88+
<div><DollarIcon width="35px" height="26px" /></div>
89+
<div className={styles.shareable_text}>
90+
{project.currentNbOfFunders === 0
91+
? 'This project does not have any backers yet'
92+
: `Backed by ${project.currentNbOfFunders}
10293
${project.currentNbOfFunders === 1 ? 'funder' : 'funders'}
10394
`}
104-
</div>
105-
10695
</div>
10796
</div>
10897
</div>
10998
</div>
11099
</div>
111100
</div>
112-
</div >
101+
</div>
113102
)
114103
}
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
### Overview
12
Emscripten-forge is a conda package distribution specifically designed for WebAssembly. When combined with JupyterLite and the jupyterlite-xeus extension, it enables easy deployment of JupyterLite with a preconfigured conda environment that includes essential packages like NumPy, Pandas, Matplotlib, and more.
23

34
While the number of available emscripten-forge packages is growing quickly, many packages are still missing from the ecosystem.
45

5-
We will be working on adding new packages upon request.
6+
We will be working on adding new packages upon request.
7+
8+
##### Are you interested in this project? Either entirely or partially, contact us for more information on how to help us fund it
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1+
### Overview
12
Similar to QGIS, JupyterGIS currently offers a set of vector processing and conversion tools such as buffer creation, centroid calculation, and convex hull generation. These capabilities are powered by a GDAL WebAssembly (WASM) build running in the browser.
23

34
We will work on extending support to raster processing tools using the same underlying technology. Planned features (non-exhaustive and subject to request needs) include:
45

56
- Clipping by extent
67
- Clipping by mask layer
78
- Generating contours
8-
- Polygonizing raster data
9+
- Polygonizing raster data
10+
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
### Overview
12
JupyterGIS currently supports several vector processing and conversion tools such as buffer creation, centroid computation, and convex hull generation, similar to what QGIS offers. These features are powered by a GDAL WebAssembly (WASM) build and are currently available only through the JupyterGIS user interface.
23

3-
We plan to extend these capabilities to the JupyterGIS Python API, enabling users to access the same processing tools programmatically, just as they would via the UI. This functionality will be implemented using the GDAL Python bindings.
4+
We plan to extend these capabilities to the JupyterGIS Python API, enabling users to access the same processing tools programmatically, just as they would via the UI. This functionality will be implemented using the GDAL Python bindings.
5+
6+
##### Are you interested in this project? Either entirely or partially, contact us for more information on how to help us fund it
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
### Overview
2+
3+
##### Are you interested in this project? Either entirely or partially, contact us for more information on how to help us fund it
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
### Overview
12
Conversion of Jupyter notebooks to PDF currently relies on nbconvert in the backend, which in turns uses a headless browser for producing the PDF. We propose to directly perform the PDF conversion in the user's browser, which will simplify the architecture and make it function with JupyterLite.
23

34
Nbconvert heavily relies on Jinja2 templates for conversion to different formats.
45

5-
We will utilize a JavaScript implementation of Jinja2 covering the required features of Jinja to produce a frontend version of nbconvert that does not require Python but still provides a good coverage of the nbconvert features, including the use of custom templates.
6+
We will utilize a JavaScript implementation of Jinja2 covering the required features of Jinja to produce a frontend version of nbconvert that does not require Python but still provides a good coverage of the nbconvert features, including the use of custom templates.
7+
8+
##### Are you interested in this project? Either entirely or partially, contact us for more information on how to help us fund it

src/components/fundable/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ export function MainAreaFundableProjects() {
2424
projectCategory={fundableProjectsDetails.jupyterEcosystem}
2525
/>
2626
</section>
27-
<section id="project-management">
27+
<section id="package-management">
2828
<ProjectCategory
2929
projectCategoryName={"Package Management"}
3030
projectCategory={fundableProjectsDetails.packageManagement}

0 commit comments

Comments
 (0)