CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
sagemathinc

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

GitHub Repository: sagemathinc/cocalc
Path: blob/master/src/packages/next/pages/pricing/institutions.tsx
Views: 687
1
/*
2
* This file is part of CoCalc: Copyright © 2023 Sagemath, Inc.
3
* License: MS-RSL – see LICENSE.md for details
4
*/
5
6
import { Alert, Layout } from "antd";
7
8
import { Icon } from "@cocalc/frontend/components/icon";
9
import Footer from "components/landing/footer";
10
import Head from "components/landing/head";
11
import Header from "components/landing/header";
12
import { Paragraph, Text, Title } from "components/misc";
13
import A from "components/misc/A";
14
import { LinkToStore } from "components/store/link";
15
import { MAX_WIDTH } from "lib/config";
16
import { Customize, useCustomize } from "lib/customize";
17
import withCustomize from "lib/with-customize";
18
19
// internal link to the contact form
20
const URL_SUPPORT =
21
"/support/new?type=purchase&subject=CoCalc%20Institutional&body=&title=Purchase%20Institutional%20License";
22
23
export default function Courses({ customize }) {
24
const { siteName } = customize;
25
return (
26
<Customize value={customize}>
27
<Head title={`${siteName} – Pricing – Institutional Licenses`} />
28
<Layout>
29
<Header page="pricing" subPage="institutions" />
30
<Layout.Content style={{ backgroundColor: "white" }}>
31
<Body />
32
<Footer />
33
</Layout.Content>
34
</Layout>
35
</Customize>
36
);
37
}
38
39
function Body(): JSX.Element {
40
const { siteName } = useCustomize();
41
42
return (
43
<div
44
style={{
45
maxWidth: MAX_WIDTH,
46
margin: "15px auto",
47
padding: "15px",
48
backgroundColor: "white",
49
}}
50
>
51
<div style={{ textAlign: "center" }}>
52
<Title level={1}>
53
<Icon name="home" style={{ marginRight: "30px" }} />
54
CoCalc - Institutional Licenses
55
</Title>
56
</div>
57
<Paragraph>
58
The price of a {siteName} license is proportional to the{" "}
59
<Text strong>number of active projects</Text> and the{" "}
60
<Text strong>amount of resources</Text> allocated to each project.
61
</Paragraph>
62
<Paragraph>
63
<Text strong>Number of active projects</Text>: You can assign a license
64
to as many projects as you need. However, the run limit of the license
65
is the upper bound to the number{" "}
66
<Text italic>simultaneously running projects</Text>.
67
</Paragraph>
68
<Paragraph>
69
Assuming each individual works on average in one project, the number of
70
people who are actively using {siteName} at the very same time will be
71
close to the number of active projects. Also, usually the number of
72
actively running projects is well below the total number of people in
73
your organization.
74
</Paragraph>
75
<Paragraph type="secondary">
76
Note: if that run limit of simultaneously active projects is exceeded,
77
those extra projects are still accessible, but will run without any
78
upgrades.
79
</Paragraph>
80
<Paragraph>
81
<Text strong>Amount of resources</Text>: minimal upgrades might be okay
82
for day-to-day calculations and editing documents, but you will run into
83
limitations if your requirements are higher. Please{" "}
84
<A href={URL_SUPPORT}>contact us</A> if you have questions, or need a
85
trial license to test out different options.
86
</Paragraph>
87
<Paragraph>
88
<Text strong>Multiple license keys</Text>: You can also acquire several
89
license keys for your institution. This means you can partition all
90
users into smaller groups, each with their own license key. This is
91
useful if you want to have distinct license keys for different
92
departments, or if you want to have a license key for students and
93
another one for faculty members. Additionally, you can also acquire an
94
additional license for a shorter period of time, to cover periods of
95
increased activity – e.g. final exams.
96
</Paragraph>
97
98
<Paragraph>
99
<Text strong>After purchase</Text>: Once you have purchased a license
100
key, you become a "license manager". This means you can pass that
101
license key on to others, track their usage, and add other people as
102
license managers.
103
</Paragraph>
104
105
<Alert
106
icon={false}
107
type="info"
108
message={<Title level={3}>Contact us</Title>}
109
description={
110
<Paragraph>
111
To learn more about institutional subscription options, please{" "}
112
<A href={URL_SUPPORT}>
113
contact us with a description of your specific requirements
114
</A>
115
.
116
</Paragraph>
117
}
118
/>
119
<Paragraph style={{ textAlign: "center" }}>
120
<LinkToStore />
121
</Paragraph>
122
</div>
123
);
124
}
125
126
export async function getServerSideProps(context) {
127
return await withCustomize({ context });
128
}
129
130