├── .editorconfig ├── .eslintrc.js ├── .gitignore ├── .prettierrc ├── LICENSE ├── README.md ├── assets ├── README.md └── styles │ ├── _global.scss │ ├── _variables.scss │ └── main.scss ├── components ├── AboutHeader.vue ├── BaseButton.vue ├── BaseContainer.vue ├── DonationBanner.vue ├── HomeHeader.vue ├── ProgramHeader.vue ├── README.md ├── SoftwaresCategoriesNavigation.vue ├── SoftwaresList.vue ├── SoftwaresListEmpty.vue ├── SoftwaresListItem.vue ├── TheFooter.vue ├── TheLogo.vue ├── TheNavbar.vue └── TheNewsletter.vue ├── config └── index.js ├── data ├── causes.json ├── causes │ ├── empower-businesses.json │ ├── health-and-wellness.json │ ├── research.json │ ├── study-remotely.json │ └── work-remotely.json └── softwares.json ├── jsconfig.json ├── layouts ├── README.md └── default.vue ├── locales ├── en.js └── index.js ├── middleware └── README.md ├── mixins └── causesAndCategories.js ├── netlify.toml ├── nuxt.config.js ├── package-lock.json ├── package.json ├── pages ├── README.md ├── _cause │ └── index.vue ├── about.vue ├── index.vue └── program.vue ├── plugins ├── README.md ├── vue2-scrollspy.js └── vue2-smooth-scroll.js ├── scripts └── getLogos.js ├── services ├── getCategoriesAndSoftwares.js ├── getCauseName.js └── getCauses.js ├── static ├── README.md ├── admin │ ├── config.yml │ └── index.html ├── android-chrome-192x192.png ├── android-chrome-512x512.png ├── apple-touch-icon.png ├── browserconfig.xml ├── favicon-16x16.png ├── favicon-32x32.png ├── favicon.ico ├── icon.png ├── images │ ├── background.svg │ ├── program │ │ ├── student1.jpg │ │ └── student2.jpg │ └── softwares │ │ ├── adobe-logo.png │ │ ├── airtable-logo.png │ │ ├── alugha-logo.png │ │ ├── amazon-chime-logo.png │ │ ├── atlassian-logo.png │ │ ├── aws-ddi-logo.png │ │ ├── bluejeans-logo.png │ │ ├── box-logo.png │ │ ├── cisco-webex-logo.png │ │ ├── cloudflare-logo.png │ │ ├── code-academy-logo.jpg │ │ ├── codeacademy-logo.png │ │ ├── datarobot-logo.png │ │ ├── designmodo-logo.png │ │ ├── discord-logo.png │ │ ├── dropbox-logo.png │ │ ├── headspace-logo.png │ │ ├── heysummit-logo.png │ │ ├── hiver-logo.png │ │ ├── icon.png │ │ ├── intercom-logo.png │ │ ├── krisp-logo.png │ │ ├── liveagent-logo.png │ │ ├── livestorm-logo.png │ │ ├── logmein-logo.png │ │ ├── loom-logo.png │ │ ├── manageengine-logo.png │ │ ├── meet-logo.png │ │ ├── message-bird-logo.png │ │ ├── messagebird-logo.png │ │ ├── miro-logo.png │ │ ├── nvidia-parabricks-logo.png │ │ ├── openphone-logo.png │ │ ├── packback-logo.png │ │ ├── pluralsight-logo.png │ │ ├── pr-co-logo.png │ │ ├── remotehq-logo.png │ │ ├── rise-science-logo.png │ │ ├── sanako-logo.jpeg │ │ ├── sanako-logo.png │ │ ├── screen-logo.png │ │ ├── slack-logo.png │ │ ├── tandem-logo.png │ │ ├── teams-logo.png │ │ ├── typeform-logo.png │ │ ├── udemy-logo.png │ │ ├── webflow-logo.png │ │ ├── zapier-logo.png │ │ ├── zoho-remotely-logo.png │ │ └── zoom-logo.png ├── mstile-150x150.png ├── safari-pinned-tab.svg └── softwaredonation.png ├── store └── README.md └── stylelint.config.js /.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | browser: true, 5 | node: true 6 | }, 7 | parserOptions: { 8 | parser: 'babel-eslint' 9 | }, 10 | extends: [ 11 | '@nuxtjs', 12 | 'prettier', 13 | 'prettier/vue', 14 | 'plugin:prettier/recommended', 15 | 'plugin:nuxt/recommended' 16 | ], 17 | plugins: [ 18 | 'prettier' 19 | ], 20 | // add your custom rules here 21 | rules: { 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Created by .ignore support plugin (hsz.mobi) 2 | ### Node template 3 | # Logs 4 | /logs 5 | *.log 6 | npm-debug.log* 7 | yarn-debug.log* 8 | yarn-error.log* 9 | 10 | # Runtime data 11 | pids 12 | *.pid 13 | *.seed 14 | *.pid.lock 15 | 16 | # Directory for instrumented libs generated by jscoverage/JSCover 17 | lib-cov 18 | 19 | # Coverage directory used by tools like istanbul 20 | coverage 21 | 22 | # nyc test coverage 23 | .nyc_output 24 | 25 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 26 | .grunt 27 | 28 | # Bower dependency directory (https://bower.io/) 29 | bower_components 30 | 31 | # node-waf configuration 32 | .lock-wscript 33 | 34 | # Compiled binary addons (https://nodejs.org/api/addons.html) 35 | build/Release 36 | 37 | # Dependency directories 38 | node_modules/ 39 | jspm_packages/ 40 | 41 | # TypeScript v1 declaration files 42 | typings/ 43 | 44 | # Optional npm cache directory 45 | .npm 46 | 47 | # Optional eslint cache 48 | .eslintcache 49 | 50 | # Optional REPL history 51 | .node_repl_history 52 | 53 | # Output of 'npm pack' 54 | *.tgz 55 | 56 | # Yarn Integrity file 57 | .yarn-integrity 58 | 59 | # dotenv environment variables file 60 | .env 61 | 62 | # parcel-bundler cache (https://parceljs.org/) 63 | .cache 64 | 65 | # next.js build output 66 | .next 67 | 68 | # nuxt.js build output 69 | .nuxt 70 | 71 | # Nuxt generate 72 | dist 73 | 74 | # vuepress build output 75 | .vuepress/dist 76 | 77 | # Serverless directories 78 | .serverless 79 | 80 | # IDE / Editor 81 | .idea 82 | 83 | # Service worker 84 | sw.* 85 | 86 | # macOS 87 | .DS_Store 88 | 89 | # Vim swap files 90 | *.swp 91 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "semi": false, 3 | "arrowParens": "always", 4 | "singleQuote": true 5 | } 6 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Software Donation [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) 2 | 3 | > Empower those in need with the power of software 4 | 5 | https://softwaredonation.org 6 | 7 | ## 📖 Build Setup 8 | 9 | ``` bash 10 | # install dependencies 11 | $ npm install 12 | 13 | # serve with hot reload at localhost:3000 14 | $ npm run dev 15 | 16 | # build for production and launch server 17 | $ npm run build 18 | $ npm run start 19 | 20 | # generate static project 21 | $ npm run generate 22 | ``` 23 | 24 | For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). 25 | 26 | ## 🖼 Download logos 27 | 28 | Download softwares logos automatically based on their `url` and `image` that are on `data/softwares.json` 29 | ``` 30 | npm run get-logos 31 | ``` 32 | 33 | ## ⭐️ Show your support 34 | Please ⭐️ this repository if this project helped you! -------------------------------------------------------------------------------- /assets/README.md: -------------------------------------------------------------------------------- 1 | # ASSETS 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your un-compiled assets such as LESS, SASS, or JavaScript. 6 | 7 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/assets#webpacked). 8 | -------------------------------------------------------------------------------- /assets/styles/_global.scss: -------------------------------------------------------------------------------- 1 | $font-family-system: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, 2 | "Helvetica Neue", sans-serif; 3 | 4 | $font-family-display: $font-family-system; 5 | $font-family-body: $font-family-system; 6 | 7 | $font-weight-body: 400; 8 | $font-weight-display: 700; 9 | 10 | $line-height-body: 1.6; 11 | $line-height-display: 1.4; 12 | 13 | $letter-spacing-body: 0; 14 | $letter-spacing-display: 0; 15 | 16 | * { 17 | box-sizing: border-box; 18 | } 19 | 20 | body { 21 | background-color: $color-grey-light; 22 | font-family: $font-family-body; 23 | font-weight: $font-weight-body; 24 | line-height: $line-height-body; 25 | letter-spacing: $letter-spacing-body; 26 | color: $color-grey-darkest; 27 | } 28 | 29 | h1, 30 | h2, 31 | h3, 32 | h4, 33 | h5, 34 | h6 { 35 | font-family: $font-family-display; 36 | font-weight: $font-weight-display; 37 | line-height: $line-height-display; 38 | letter-spacing: $letter-spacing-display; 39 | margin: 0; 40 | } 41 | 42 | a { 43 | text-decoration: none; 44 | color: $color-grey-dark; 45 | 46 | &:hover { 47 | color: $color-primary; 48 | } 49 | } -------------------------------------------------------------------------------- /assets/styles/_variables.scss: -------------------------------------------------------------------------------- 1 | $border-radius-sm: 2px; 2 | $border-radius-md: 4px; 3 | $border-radius-xl: 8px; 4 | $border-radius-button: $border-radius-sm; 5 | $border-radius-card: $border-radius-md; 6 | $border-radius-banner: $border-radius-xl; 7 | 8 | $font-size-xxxs: 12px; 9 | $font-size-xxs: 14px; 10 | $font-size-xs: 16px; 11 | $font-size-sm: 18px; 12 | $font-size-md: 20px; 13 | $font-size-lg: 24px; 14 | $font-size-xl: 32px; 15 | $font-size-xxl: 48px; 16 | $font-size-xxxl: 60px; 17 | $font-size-4xl: 72px; 18 | 19 | $space-4xs: 2px; 20 | $space-xxxs: 4px; 21 | $space-xxs: 8px; 22 | $space-xs: 12px; 23 | $space-sm: 16px; 24 | $space-md: 24px; 25 | $space-lg: 32px; 26 | $space-xl: 48px; 27 | $space-xxl: 64px; 28 | $space-xxxl: 96px; 29 | $space-4xl: 128px; 30 | $space-5xl: 192px; 31 | $space-6xl: 256px; 32 | $space-7xl: 384px; 33 | $space-8xl: 512px; 34 | 35 | $shadow-elevation-1: 0 1px 3px hsla(0, 0, 0, 0.12), 0 1px 2px hsla(0, 0, 0, 0.24); 36 | $shadow-elevation-2: 0 3px 6px hsla(0, 0, 0, 0.15), 0 2px 4px hsla(0, 0, 0, 0.12); 37 | $shadow-elevation-3: 0 10px 20px hsla(0, 0, 0, 0.15), 0 3px 6px hsla(0, 0, 0, 0.1); 38 | $shadow-elevation-4: 0 15px 25px hsla(0, 0, 0, 0.15), 0 5px 10px hsla(0, 0, 0, 0.5); 39 | $shadow-elevation-5: 0 20px 40px hsla(0, 0, 0, 0.2); 40 | 41 | $color-grey-darkest: #12263f; 42 | $color-grey-dark: #617692; 43 | $color-grey: #d2ddec; 44 | $color-grey-light: #edf1f5; 45 | $color-grey-lightest: #f5f7fa; 46 | 47 | $color-primary-darkest: #12283a; 48 | $color-primary-darker: #1a4971; 49 | $color-primary-dark: #2368a2; 50 | $color-primary: #3183c8; 51 | $color-primary-light: #3183c8; 52 | $color-primary-lighter: #aad4f5; 53 | $color-primary-lightest: #eff8ff; 54 | 55 | $color-accent-darkest: #124544; 56 | $color-accent-darker: #1b655e; 57 | $color-accent-dark: #2a9187; 58 | $color-accent: #3caea3; 59 | $color-accent-light: #6ed7d3; 60 | $color-accent-lighter: #a8eeeb; 61 | $color-accent-lightest: #eff8ff; 62 | 63 | $color-danger-darkest: #5f1919; 64 | $color-danger-darker: #871c1c; 65 | $color-danger-dark: #b22021; 66 | $color-danger: #db3030; 67 | $color-danger-light: #e16364; 68 | $color-danger-lighter: #f5aaaa; 69 | $color-danger-lightest: #f9e5e6; 70 | 71 | $color-warning-darkest: #5c4813; 72 | $color-warning-darker: #8c6d1f; 73 | $color-warning-dark: #caa53d; 74 | $color-warning: #f4ca64; 75 | $color-warning-light: #fae29f; 76 | $color-warning-lighter: #fdf3d7; 77 | $color-warning-lightest: #fffcf4; 78 | 79 | $color-success-darkest: #145138; 80 | $color-success-darker: #197741; 81 | $color-success-dark: #259d58; 82 | $color-success: #38c172; 83 | $color-success-light: #74d99f; 84 | $color-success-lighter: #a8eec1; 85 | $color-success-lightest: #e3fcec; 86 | 87 | $container-width: 1100px; 88 | $container-padding: $space-sm; 89 | 90 | $screen-sm: 576px; 91 | $screen-md: 768px; 92 | $screen-lg: 992px; 93 | $screen-xl: 1200px; -------------------------------------------------------------------------------- /assets/styles/main.scss: -------------------------------------------------------------------------------- 1 | @import 'normalize.css'; 2 | @import 'variables'; 3 | @import 'global'; -------------------------------------------------------------------------------- /components/AboutHeader.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 19 | 20 | 55 | -------------------------------------------------------------------------------- /components/BaseButton.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 61 | 62 | 153 | -------------------------------------------------------------------------------- /components/BaseContainer.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 15 | -------------------------------------------------------------------------------- /components/DonationBanner.vue: -------------------------------------------------------------------------------- 1 | 18 | 19 | 37 | 38 | 72 | -------------------------------------------------------------------------------- /components/HomeHeader.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 20 | 21 | 63 | -------------------------------------------------------------------------------- /components/ProgramHeader.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 33 | 34 | 70 | -------------------------------------------------------------------------------- /components/README.md: -------------------------------------------------------------------------------- 1 | # COMPONENTS 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | The components directory contains your Vue.js Components. 6 | 7 | _Nuxt.js doesn't supercharge these components._ 8 | -------------------------------------------------------------------------------- /components/SoftwaresCategoriesNavigation.vue: -------------------------------------------------------------------------------- 1 | 25 | 26 | 36 | 37 | 80 | -------------------------------------------------------------------------------- /components/SoftwaresList.vue: -------------------------------------------------------------------------------- 1 | 50 | 51 | 91 | 92 | 135 | -------------------------------------------------------------------------------- /components/SoftwaresListEmpty.vue: -------------------------------------------------------------------------------- 1 | 28 | 29 | 46 | 47 | 73 | -------------------------------------------------------------------------------- /components/SoftwaresListItem.vue: -------------------------------------------------------------------------------- 1 | 30 | 31 | 79 | 80 | 144 | -------------------------------------------------------------------------------- /components/TheFooter.vue: -------------------------------------------------------------------------------- 1 | 24 | 25 | 50 | 51 | 96 | -------------------------------------------------------------------------------- /components/TheLogo.vue: -------------------------------------------------------------------------------- 1 | 114 | 115 | 133 | -------------------------------------------------------------------------------- /components/TheNavbar.vue: -------------------------------------------------------------------------------- 1 | 28 | 29 | 77 | 78 | 140 | -------------------------------------------------------------------------------- /components/TheNewsletter.vue: -------------------------------------------------------------------------------- 1 | 43 | 44 | 107 | -------------------------------------------------------------------------------- /config/index.js: -------------------------------------------------------------------------------- 1 | export const DEFAULT_CAUSE = 'work-remotely' 2 | export const DONATE_LINK = 'https://letsdonatesoftware.typeform.com/to/w2aXXR' 3 | export const CONTACT_FORM_LINK = 4 | 'https://letsdonatesoftware.typeform.com/to/sARrWd' 5 | export const GITHUB_LINK = 6 | 'https://github.com/SoftwareDonation/software-donation' 7 | export const MAIN_TITLE = 'Software Donation' 8 | export const MAIN_DESCRIPTION = 'Donate software to people in need' 9 | export const SOCIAL_DESCRIPTION = 'Donate software to support causes and people' 10 | -------------------------------------------------------------------------------- /data/causes.json: -------------------------------------------------------------------------------- 1 | { 2 | "causes": [ 3 | { 4 | "id": "work-remotely", 5 | "name": "Work Remotely" 6 | }, 7 | { 8 | "id": "study-remotely", 9 | "name": "Study Remotely" 10 | }, 11 | { 12 | "id": "health-and-wellness", 13 | "name": "Health and Wellness" 14 | }, 15 | { 16 | "id": "empower-businesses", 17 | "name": "Empower Businesses" 18 | }, 19 | { 20 | "id": "research", 21 | "name": "Research" 22 | } 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /data/causes/empower-businesses.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "empower-businesses", 3 | "categories": [ 4 | { 5 | "name": "Design and Build Tools", 6 | "softwares": [ 7 | { 8 | "id": "webflow" 9 | }, 10 | { 11 | "id": "adobe" 12 | }, 13 | { 14 | "id": "designmodo" 15 | } 16 | ] 17 | }, 18 | { 19 | "name": "Communication Tools", 20 | "softwares": [ 21 | { 22 | "id": "openphone" 23 | }, 24 | { 25 | "id": "messagebird" 26 | }, 27 | { 28 | "id": "intercom" 29 | }, 30 | { 31 | "id": "liveagent" 32 | } 33 | ] 34 | }, 35 | { 36 | "name": "Marketing", 37 | "softwares": [ 38 | { 39 | "id": "pr-co" 40 | }, 41 | { 42 | "id": "alugha" 43 | } 44 | ] 45 | }, 46 | { 47 | "name": "Infrastructure", 48 | "softwares": [ 49 | { 50 | "id": "cloudflare" 51 | } 52 | ] 53 | }, 54 | { 55 | "name": "Data Collection", 56 | "softwares": [ 57 | { 58 | "id": "typeform" 59 | } 60 | ] 61 | }, 62 | { 63 | "name": "Automation", 64 | "softwares": [ 65 | { 66 | "id": "zapier" 67 | } 68 | ] 69 | } 70 | ] 71 | } 72 | -------------------------------------------------------------------------------- /data/causes/health-and-wellness.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "health-and-wellness", 3 | "categories": [ 4 | { 5 | "name": "Meditation", 6 | "softwares": [ 7 | { 8 | "id": "headspace" 9 | } 10 | ] 11 | }, 12 | { 13 | "name": "Better Sleep", 14 | "softwares": [ 15 | { 16 | "id": "rise-science" 17 | } 18 | ] 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /data/causes/research.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "research", 3 | "categories": [ 4 | { 5 | "name": "Cloud Computing Services", 6 | "softwares": [ 7 | { 8 | "id": "aws-ddi" 9 | } 10 | ] 11 | }, 12 | { 13 | "name": "Machine Learning and Data Analysis Tools", 14 | "softwares": [ 15 | { 16 | "id": "datarobot" 17 | }, 18 | { 19 | "id": "nvidia-parabricks" 20 | } 21 | ] 22 | } 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /data/causes/study-remotely.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "study-remotely", 3 | "categories": [ 4 | { 5 | "name": "Online Courses", 6 | "softwares": [ 7 | { 8 | "id": "codeacademy" 9 | }, 10 | { 11 | "id": "udemy" 12 | }, 13 | { 14 | "id": "pluralsight" 15 | } 16 | ] 17 | }, 18 | { 19 | "name": "Digital Classroom", 20 | "softwares": [ 21 | { 22 | "id": "sanako" 23 | } 24 | ] 25 | }, 26 | { 27 | "name": "Discussion Platform", 28 | "softwares": [ 29 | { 30 | "id": "packback" 31 | } 32 | ] 33 | } 34 | ] 35 | } 36 | -------------------------------------------------------------------------------- /data/causes/work-remotely.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "work-remotely", 3 | "categories": [ 4 | { 5 | "name": "Remote Communication", 6 | "softwares": [ 7 | { 8 | "id": "hangouts-meet" 9 | }, 10 | { 11 | "id": "microsoft-teams" 12 | }, 13 | { 14 | "id": "zoom" 15 | }, 16 | { 17 | "id": "cisco-webex" 18 | }, 19 | { 20 | "id": "logmein" 21 | }, 22 | { 23 | "id": "discord" 24 | }, 25 | { 26 | "id": "livestorm" 27 | }, 28 | { 29 | "id": "bluejeans" 30 | }, 31 | { 32 | "id": "heysummit" 33 | }, 34 | { 35 | "id": "krisp" 36 | } 37 | ] 38 | }, 39 | { 40 | "name": "Remote Collaboration", 41 | "softwares": [ 42 | { 43 | "id": "miro" 44 | }, 45 | { 46 | "id": "loom" 47 | }, 48 | { 49 | "id": "airtable" 50 | }, 51 | { 52 | "id": "zoho-remotely" 53 | }, 54 | { 55 | "id": "atlassian" 56 | }, 57 | { 58 | "id": "hiver" 59 | } 60 | ] 61 | }, 62 | { 63 | "name": "Remote Office", 64 | "softwares": [ 65 | { 66 | "id": "remotehq" 67 | }, 68 | { 69 | "id": "tandem" 70 | }, 71 | { 72 | "id": "slack" 73 | }, 74 | { 75 | "id": "screen" 76 | } 77 | ] 78 | }, 79 | { 80 | "name": "Remote File Sharing", 81 | "softwares": [ 82 | { 83 | "id": "dropbox" 84 | }, 85 | { 86 | "id": "box" 87 | } 88 | ] 89 | }, 90 | { 91 | "name": "Remote Operation", 92 | "softwares": [ 93 | { 94 | "id": "manageengine" 95 | } 96 | ] 97 | } 98 | ] 99 | } 100 | -------------------------------------------------------------------------------- /data/softwares.json: -------------------------------------------------------------------------------- 1 | { 2 | "softwares": [ 3 | { 4 | "id": "hangouts-meet", 5 | "name": "Hangouts Meet", 6 | "description": "Video conferencing from Google that integrates with G Suite versions of Google Calendar and Gmail", 7 | "eligibility": "🎁 Free for all users until July 1, 2020, offering up to 250 users per call, the ability to record meetings, and livestream capabilities for up to 100,000 viewers", 8 | "url": "https://cloud.google.com/blog/products/g-suite/helping-businesses-and-schools-stay-connected-in-response-to-coronavirus", 9 | "image": "/images/softwares/meet-logo.png" 10 | }, 11 | { 12 | "id": "microsoft-teams", 13 | "name": "Microsoft Teams", 14 | "description": "Hub for team collaboration in Office 365 that integrates the people, content, and tools your team needs to be more engaged and effective", 15 | "eligibility": "🎁 Premium version of Teams for free for six months for everyone and existing user limits have been lifted on its free version", 16 | "url": "https://www.microsoft.com/en-us/microsoft-365/blog/2020/03/05/our-commitment-to-customers-during-covid-19/", 17 | "image": "/images/softwares/teams-logo.png" 18 | }, 19 | { 20 | "id": "loom", 21 | "name": "Loom", 22 | "description": "Screen & video Recording software", 23 | "eligibility": "🎁 Loom Pro is now free for education. Through July 1, no recording limit on free plan, Loom Pro trials extended from 14 to 30 days and the Loom Pro price is cut in half — from $10 month to $5 month", 24 | "url": "https://www.loom.com/blog/coronavirus-response", 25 | "image": "/images/softwares/loom-logo.png" 26 | }, 27 | { 28 | "id": "logmein", 29 | "name": "LogMeIn", 30 | "description": "Emergency Remote Work Kits which include GoToMeeting and GoToWebinar, where users can host presentations for up to 3,000 users", 31 | "eligibility": "🎁 Available for free for three months for nonprofits, schools, and health care organizations that aren't already customers", 32 | "url": "https://blog.gotomeeting.com/coronavirus-disruptions-and-support/", 33 | "image": "/images/softwares/logmein-logo.png" 34 | }, 35 | { 36 | "id": "remotehq", 37 | "name": "RemoteHQ", 38 | "description": "Real-time collaboration for distributed teams, offering video conferencing, screen share, co-browsing, file sharing, whiteboarding, joint note-taking, audio recoring and many more", 39 | "eligibility": "🎁 Free access to all new users", 40 | "url": "https://www.remotehq.com/stay-healthy", 41 | "image": "/images/softwares/remotehq-logo.png" 42 | }, 43 | { 44 | "id": "tandem", 45 | "name": "Tandem", 46 | "description": "Virtual office for remote teams allowing its users to see, talk to, and collaborate with their team in one click", 47 | "eligibility": "🎁 Free access to all new users for the next few months", 48 | "url": "https://tandem.chat/coronavirus", 49 | "image": "/images/softwares/tandem-logo.png" 50 | }, 51 | { 52 | "id": "cisco-webex", 53 | "name": "Cisco Webex", 54 | "description": "Video conferencing, online meetings, screen share", 55 | "eligibility": "🎁 Free version with no time restrictions, allowing up to 100 meeting participants and has added toll-free dial-in features with a 90-day license for businesses that are not already customers", 56 | "url": "https://blog.webex.com/video-conferencing/cisco-webex-supporting-customers-during-this-unprecedented-time/", 57 | "image": "/images/softwares/cisco-webex-logo.png" 58 | }, 59 | { 60 | "id": "zoom", 61 | "name": "Zoom", 62 | "description": "Video conferencing, online Meetings, screen share", 63 | "eligibility": "🎁 Extended its free plan in China to allow unlimited meeting times and breakout rooms, and removed restrictions on participant limits", 64 | "url": "https://blog.zoom.us/wordpress/2020/02/26/zoom-commitment-user-support-business-continuity-during-coronavirus-outbreak/", 65 | "image": "/images/softwares/zoom-logo.png" 66 | }, 67 | { 68 | "id": "discord", 69 | "name": "Discord", 70 | "description": " Voice, text chat andlive streaming for your team", 71 | "eligibility": "🎁 Go Live streaming limit from 10 to 50 people for everyone for the next few months", 72 | "url": "https://support.discordapp.com/hc/en-us/articles/360030714312-Stream-your-game-with-Go-Live-", 73 | "image": "/images/softwares/discord-logo.png" 74 | }, 75 | { 76 | "id": "miro", 77 | "name": "Miro", 78 | "description": "Collaborative whiteboard platform for distributed teams", 79 | "eligibility": "🎁 Free up to 3 whiteboards for all users and 30% discount on premium subscriptions for non-profit organizations", 80 | "url": "https://help.miro.com/hc/en-us/articles/360026839633-NPO-Subscriptions", 81 | "image": "/images/softwares/miro-logo.png" 82 | }, 83 | { 84 | "id": "dropbox", 85 | "name": "Dropbox", 86 | "description": "Upload and transfer files to the cloud, and share them with anyone with any of your computers or mobile devices—from anywhere", 87 | "eligibility": "🎁 Free Dropbox Business subscriptions for a three-month period to nonprofits and NGOs that are focused on fighting COVID-19", 88 | "url": "https://go.dropbox.com/en-us/covid19-donation-program", 89 | "image": "/images/softwares/dropbox-logo.png" 90 | }, 91 | { 92 | "id": "box", 93 | "name": "Box", 94 | "description": "A single place to manage, secure, share and govern all of the content for your internal and external collaboration and processes", 95 | "eligibility": "🎁 Box business edition free for 90 days here for any small and medium businesses", 96 | "url": "https://account.box.com/signup/business?tl=oWgBWV", 97 | "image": "/images/softwares/box-logo.png" 98 | }, 99 | { 100 | "id": "slack", 101 | "name": "Slack", 102 | "description": "A chat room for your whole company, designed to replace email as your primary method of communication and sharing", 103 | "eligibility": "🎁 Free access to a Slack paid plan for three months for all nonprofits and other organizations carrying out critical relief efforts", 104 | "url": "https://slack.com/covid-help/apply", 105 | "image": "/images/softwares/slack-logo.png" 106 | }, 107 | { 108 | "id": "airtable", 109 | "name": "Airtable", 110 | "description": "Airtable works like a spreadsheet but gives you the power of a database to organize anything", 111 | "eligibility": "🎁 Pro plans available for free—with no time limit—to any non-political humanitarian groups working on COVID-19 relief efforts", 112 | "url": "https://blog.airtable.com/airtables-support-for-covid-19-response-efforts/", 113 | "image": "/images/softwares/airtable-logo.png" 114 | }, 115 | { 116 | "id": "livestorm", 117 | "name": "Livestorm", 118 | "description": "Browser based online web conferencing software to power remote live meetings, product demos, sales webinars, online lessons, onboarding sessions, more", 119 | "eligibility": "🎁 Free and unlimited use of Remote video meeting solution for the duration of the pandemic", 120 | "url": "https://livestorm.co/blog/livestorm-and-covid-19/", 121 | "image": "/images/softwares/livestorm-logo.png" 122 | }, 123 | { 124 | "id": "bluejeans", 125 | "name": "BlueJeans", 126 | "description": "Cloud-based video conferencing service that connects participants across a wide range of devices and conferencing platforms", 127 | "eligibility": "🎁 Free 90-Day Service for First Responders and NGOs Helping With the Novel Coronavirus Response", 128 | "url": "https://www.bluejeans.com/first-responder-free-ninety-days", 129 | "image": "/images/softwares/bluejeans-logo.png" 130 | }, 131 | { 132 | "id": "zoho-remotely", 133 | "name": "Zoho Remotely", 134 | "description": "Zoho Remotely is a a complete suite of web and mobile apps that will help you communicate, collaborate and be productive remotely", 135 | "eligibility": "🎁 Free till July 1, 2020 by which time we hope the Coronavirus crisis tides over", 136 | "url": "https://www.zoho.com/remotely/", 137 | "image": "/images/softwares/zoho-remotely-logo.png" 138 | }, 139 | { 140 | "id": "heysummit", 141 | "name": "HeySummit", 142 | "description": "Organize, promote, and analyse you online summits", 143 | "eligibility": "🎁 One free virtual summit for coronavirus-affected events that are scheduled in the next three months", 144 | "url": "https://heysummit.com/blog/free-virtual-summit-corona-affected-events/", 145 | "image": "/images/softwares/heysummit-logo.png" 146 | }, 147 | { 148 | "id": "krisp", 149 | "name": "Krisp", 150 | "description": "Noise cancelling app that removes all background noises for incoming and outgoing calls", 151 | "eligibility": "🎁 Unlimited Krisp for all students, teachers, hospital and government workers, worldwide + 120min/week of free noise for all users", 152 | "url": "https://krisp.ai/blog/covid19-response/", 153 | "image": "/images/softwares/krisp-logo.png" 154 | }, 155 | { 156 | "id": "headspace", 157 | "name": "Headspace", 158 | "description": "Your guide to everyday mindfulness in just a few minutes a day for less stress and better sleep", 159 | "eligibility": "🎁 Free access to Headspace Plus for all K-12 teachers, school administrators, and supporting staff in the US, UK, Canada, and Australia, US healthcare professionals working in public health settings", 160 | "url": "https://www.headspace.com/covid-19", 161 | "image": "/images/softwares/headspace-logo.png" 162 | }, 163 | { 164 | "id": "webflow", 165 | "name": "Webflow", 166 | "description": "Webflow gives designers and developers the power to design, build, and launch responsive websites visually in the browser", 167 | "eligibility": "🎁 Available free of charge to any organization creating informational websites to slow the spread of COVID-19", 168 | "url": "https://twitter.com/webflow/status/1239587770139639808", 169 | "image": "/images/softwares/webflow-logo.png" 170 | }, 171 | { 172 | "id": "atlassian", 173 | "name": "Atlassian", 174 | "description": "Software development, collaboration and issue tracking tools for teams", 175 | "eligibility": "🎁 Core cloud software products available for free for everyone", 176 | "url": "https://www.atlassian.com/blog/teamwork/atlassians-commitment-to-our-customers-during-the-covid-19-pandemic", 177 | "image": "/images/softwares/atlassian-logo.png" 178 | }, 179 | { 180 | "id": "screen", 181 | "name": "Screen", 182 | "description": "Fast screen sharing with multiplayer control, drawing & video, also great for pair programming", 183 | "eligibility": "🎁 Free for everyone during the COVID-19 outbreak", 184 | "url": "https://screen.so/#/pricing", 185 | "image": "/images/softwares/screen-logo.png" 186 | }, 187 | { 188 | "id": "openphone", 189 | "name": "OpenPhone", 190 | "description": "Simple and delightful business phone for startups, small businesses and individuals", 191 | "eligibility": "🎁 3 months free when you port a landline or desk phone", 192 | "url": "https://www.openphone.co/blog/port-landline-to-openphone/", 193 | "image": "/images/softwares/openphone-logo.png" 194 | }, 195 | { 196 | "id": "messagebird", 197 | "name": "MessageBird", 198 | "description": "Cloud communications platform offering a suite of APIs, SDKs, and tools for programmatic communication on SMS, Voice, Whatsapp, Messenger, WeChat, Line, and more", 199 | "eligibility": "🎁 Free and unlimited public health and safety communication for the hospitals, governments, and any essential providers that need to keep people up-to-date and answer critical questions", 200 | "url": "https://www.messagebird.com/inbox-for-good", 201 | "image": "/images/softwares/message-bird-logo.png" 202 | }, 203 | { 204 | "id": "pr-co", 205 | "name": "pr.co", 206 | "description": "Public relations and communications plarform, offering intuitive newsrooms, media centers and press pages", 207 | "eligibility": "🎁 Free for NGOs (and business) that have a role in providing information, reassurance, and guidance during crisis, plus collaboration features for free to all customers", 208 | "url": "https://news.pr.co/187218-pr-co-fully-operational-and-offering-some-services-for-free-during-the-covid-19-crisis", 209 | "image": "/images/softwares/pr-co-logo.png" 210 | }, 211 | { 212 | "id": "intercom", 213 | "name": "Intercom", 214 | "description": "Customer messaging apps for sales, marketing, and support, connected on one platform", 215 | "eligibility": "🎁 Available free of charge to any company or institution fighting COVID-19 and its impact on society, or working to help those affected", 216 | "url": "https://www.intercom.com/partner/covid-19-information", 217 | "image": "/images/softwares/intercom-logo.png" 218 | }, 219 | { 220 | "id": "cloudflare", 221 | "name": "Cloudflare", 222 | "description": "Content-delivery-network services, DDoS mitigation, Internet security for your company", 223 | "eligibility": "🎁 Cloudflare for Teams available for organizations of any size at no cost through September 1, including an optional 30-minute onboarding session with a technical expert", 224 | "url": "https://teams.cloudflare.com/", 225 | "image": "/images/softwares/cloudflare-logo.png" 226 | }, 227 | { 228 | "id": "amazon-chime", 229 | "name": "Amazon Chime", 230 | "description": "Online meetings, voice and video chat, along with in-room conferencing services, working across any client device using native applications or browser extension", 231 | "eligibility": "🎁 Free use of all Amazon Chime Pro features for online meetings and video conferencing from March 4, 2020 to June 30, 2020 for all customers that start using Amazon Chime for the first time", 232 | "url": "https://aws.amazon.com/chime/pricing/", 233 | "image": "/images/softwares/amazon-chime-logo.png" 234 | }, 235 | { 236 | "id": "rise-science", 237 | "name": "Rise", 238 | "description": "Sleep app that offers free sleep tracking and sleep-enhancing recommendations based on your circadian rhythm", 239 | "eligibility": "🎁 Free use for everyone throughout the COVID-19 crisis", 240 | "url": "https://www.risescience.com/better-sleep-better-health", 241 | "image": "/images/softwares/rise-science-logo.png" 242 | }, 243 | { 244 | "id": "packback", 245 | "name": "Packback", 246 | "description": "AI-supported online discussion platform that offers asynchronous discussion experience, automated discussion moderation and real-time feedback on students’ posts", 247 | "eligibility": "🎁 Zero cost licenses through the end of the Spring semester or academic quarter for any higher education courses moving online mid-term due to COVID-19 prevention", 248 | "url": "https://www.packback.co/news/helping-classrooms-stay-connected-and-engaged-online/", 249 | "image": "/images/softwares/packback-logo.png" 250 | }, 251 | { 252 | "id": "sanako", 253 | "name": "Sanako", 254 | "description": "Technology enhanced language centres for the digital classroom and beyond to move your school’s language classes online", 255 | "eligibility": "🎁 Remote teaching tool available for free for 5000 schools until end of semester", 256 | "url": "https://etcjournal.com/2020/03/17/sanako-remote-language-teaching-tool-free-until-end-of-semester", 257 | "image": "/images/softwares/sanako-logo.jpeg" 258 | }, 259 | { 260 | "id": "codeacademy", 261 | "name": "Codeacademy", 262 | "description": "Technology enhanced language centres for the digital classroom and beyond to move your school’s language classes online", 263 | "eligibility": "🎁 10,000 scholarships to Codecademy Pro for free to high school and college students across the world for the rest of the school year", 264 | "url": "https://pro.codecademy.com/learn-from-home/", 265 | "image": "/images/softwares/code-academy-logo.jpg" 266 | }, 267 | { 268 | "id": "typeform", 269 | "name": "Typeform", 270 | "description": "Build interactive, engaging, and conversational online forms for powering your brand’s interactions", 271 | "eligibility": "🎁 3 months free of Typeform for anyone working on COVID-19 related projects that are strictly not-for-profit", 272 | "url": "https://try.typeform.com/covid-19/", 273 | "image": "/images/softwares/typeform-logo.png" 274 | }, 275 | { 276 | "id": "udemy", 277 | "name": "Udemy", 278 | "description": "Build interactive, engaging, and conversational online forms for powering your brand’s interactions", 279 | "eligibility": "🎁 More than 100 courses for free for everyone", 280 | "url": "https://www.udemy.com/courses/free/?sort=popularity&subcategory=Creativity", 281 | "image": "/images/softwares/udemy-logo.png" 282 | }, 283 | { 284 | "id": "pluralsight", 285 | "name": "Pluralsight", 286 | "description": "Online education platform that offers a variety of video training courses for software developers, IT administrators, and creative professionals", 287 | "eligibility": "🎁 Pluralsight's entire library of 7,000+ online tech courses available for free for everyone during April", 288 | "url": "https://www.pluralsight.com/offer/2020/free-april-month", 289 | "image": "/images/softwares/pluralsight-logo.png" 290 | }, 291 | { 292 | "id": "adobe", 293 | "name": "Adobe Creative Cloud", 294 | "description": "Collection of 20+ desktop and mobile apps and services for photography, design, video, web, UX and more", 295 | "eligibility": "🎁 Available at no cost until May 31, 2020 for schools and colleges who currently have only lab access for students", 296 | "url": "https://theblog.adobe.com/adobe-enables-distance-learning-globally-schools-impacted-covid-19/", 297 | "image": "/images/softwares/adobe-logo.png" 298 | }, 299 | { 300 | "id": "aws-ddi", 301 | "name": "AWS Diagnostic Development Initiative (DDI)", 302 | "description": " An initiative that provides support for innovation in rapid and accurate patient testing for 2019 novel coronavirus (COVID-19), and other diagnostic solutions to mitigate future outbreaks", 303 | "eligibility": "🎁 Offering technical support and providing AWS promotional credits to support the use of AWS services to advance diagnostic research for selected institutions and companies", 304 | "url": "https://aws.amazon.com/government-education/nonprofits/disaster-response/diagnostic-dev-initiative/", 305 | "image": "/images/softwares/aws-ddi-logo.png" 306 | }, 307 | { 308 | "id": "manageengine", 309 | "name": "ManageEngine Secure Remote Access Toolkit", 310 | "description": " ManageEngine's Secure Remote Access Toolkit (Access Manager Plus and Remote Access Plus allow) seamless yet secure connections to desktops, servers, databases, and network devices from employees' homes", 311 | "eligibility": "🎁 Free license for any organization that is working remotely due to COVID-19", 312 | "url": "https://www.manageengine.com/secure-remote-access-software/", 313 | "image": "/images/softwares/manageengine-logo.png" 314 | }, 315 | { 316 | "id": "hiver", 317 | "name": "Hiver", 318 | "description": "Fast email collaboration using shared inboxes such as support@ or invoices@ with ease right inside Gmail", 319 | "eligibility": "🎁 Free till June 30, 2020 for small businesses with less than 50 employees that are helping contain the spread of COVID-19 or providing relief to those impacted", 320 | "url": "https://hiverhq.com/covid-19", 321 | "image": "/images/softwares/hiver-logo.png" 322 | }, 323 | { 324 | "id": "liveagent", 325 | "name": "LiveAgent", 326 | "description": "Live chat, call center, and ticketing software that helps organizations respond to customer queries quickly and answer all calls from the safety of their home", 327 | "eligibility": "🎁 Free for public institutions and hospitals", 328 | "url": "https://www.facebook.com/LiveAgent/posts/3117668481584679", 329 | "image": "/images/softwares/liveagent-logo.png" 330 | }, 331 | { 332 | "id": "designmodo", 333 | "name": "Designmodo", 334 | "description": "Timesaving digital products and tools for designers and developers including website and email builders", 335 | "eligibility": "🎁 Free one month subscriptions for nonprofits, NGOs and businesses affected by COVID-19", 336 | "url": "https://designmodo.com/freemonth/", 337 | "image": "/images/softwares/designmodo-logo.png" 338 | }, 339 | { 340 | "id": "alugha", 341 | "name": "Alugha", 342 | "description": "Universal toolkit to create, publish and host multilingual videos efficiently at scale", 343 | "eligibility": "🎁 Free unlimited small business account till 25th of May", 344 | "url": "https://alugha.com/plans/7477a4cb-4d22-470e-ba1c-646ac9225787", 345 | "image": "/images/softwares/alugha-logo.png" 346 | }, 347 | { 348 | "id": "zapier", 349 | "name": "Zapier", 350 | "description": "Zapier lets you connect the apps you use to create workflows and complete routine tasks automatically", 351 | "eligibility": "🎁 Free Starter plans (1,500 tasks/mo) through the end of the year, for groups working on the front lines of tackling COVID-19 relief efforts", 352 | "url": "https://zapier.com/blog/zapier-covid-19/", 353 | "image": "/images/softwares/zapier-logo.png" 354 | }, 355 | { 356 | "id": "datarobot", 357 | "name": "DataRobot", 358 | "description": "With DataRobot Automated Machine Learning, you can automate every step needed to build, deploy, and maintain powerful AI, leading to powerful predictions and with DataRobot Paxata, researchers can pull in data from cloud and local desktop files and prepare that data in any way to make it ready for machine learning", 359 | "eligibility": "🎁 Free access to DataRobot’s automated machine learning and Paxata data preparation solutions to those interested in using it to help with the COVID-19 virus response effort", 360 | "url": "https://www.datarobot.com/lp/covid-19-response-effort/", 361 | "image": "/images/softwares/datarobot-logo.png" 362 | }, 363 | { 364 | "id": "nvidia-parabricks", 365 | "name": "NVIDIA Parabricks", 366 | "description": "Parabricks is a software suite for performing secondary analysis of next generation sequencing (NGS) DNA data", 367 | "eligibility": "🎁 Free 90-day license to Parabricks to any researcher in the worldwide effort to fight the novel coronavirus", 368 | "url": "https://www.developer.nvidia.com/nvidia-parabricks", 369 | "image": "/images/softwares/nvidia-parabricks-logo.png" 370 | } 371 | ] 372 | } 373 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": ".", 4 | "paths": { 5 | "~/*": ["./*"], 6 | "@/*": ["./*"], 7 | "~~/*": ["./*"], 8 | "@@/*": ["./*"] 9 | } 10 | }, 11 | "exclude": ["node_modules", ".nuxt", "dist"] 12 | } 13 | -------------------------------------------------------------------------------- /layouts/README.md: -------------------------------------------------------------------------------- 1 | # LAYOUTS 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your Application Layouts. 6 | 7 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/views#layouts). 8 | -------------------------------------------------------------------------------- /layouts/default.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 21 | -------------------------------------------------------------------------------- /locales/en.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | navigation: { 3 | program: 'Donation Program', 4 | about: 'About', 5 | logo: '<❤/>' 6 | }, 7 | home: { 8 | hero: { 9 | headline: 'Transforming lives through access to powerful software', 10 | description: 11 | 'Software Donation is an initiative for making a positive impact with the power of software tools' 12 | }, 13 | causes: { 14 | call_to_action_sentence: 'Tools to help you during COVID-19' 15 | } 16 | }, 17 | program: { 18 | meta_description: 19 | 'Transform lives and create positive impact with the power of software', 20 | hero: { 21 | title: 'Transform lives and create positive impact with the power of software', 22 | description: 23 | 'Your software can create a change and empower those in need. Join Google, Zoom, Microsoft and many other companies who are donating their software.', 24 | button: 'Join Now' 25 | }, 26 | sections: { 27 | first: { 28 | title: 29 | 'Donate remote working tools to empower companies to work remotely', 30 | description: 31 | 'Remote working tools can enable those in quarantined cities to continue their work. Join and donate premium access to your tool to those in need.', 32 | button: 'Start Donating' 33 | }, 34 | second: { 35 | title: 36 | 'Donate online studying tools to enable students to continue their study', 37 | description: 38 | 'Distance learning tools can create a big impact by enabling distance learning for schools and universities. Join and donate your software access. ', 39 | button: 'Start Donating' 40 | } 41 | } 42 | }, 43 | about: { 44 | title: 'Software Donation Initiative', 45 | meta_title: 'About', 46 | text: `Software Donation is a foundation that aims to create a platform where software companies can join and donate their tools to empower those in need. Our current main focus is COVID-19 and we accept companies in remote working, distance learning industries and some other relevant causes that are listed on our home page. Our mission is to create awareness around intangible donations like tools and help companies with their software donation strategy. We're currently accepting companies to become our founding partners and if you're interested in joining this journey, contact us below.`, 47 | button: 'Get in touch' 48 | }, 49 | donation_banner: { 50 | title: 'Can your software make a change?', 51 | description: 52 | 'Join the movement and donate your software to support the cause', 53 | button: 'Donate now' 54 | }, 55 | newsletter: { 56 | title: 'Join the newsletter', 57 | button: 'subscribe' 58 | }, 59 | software: { 60 | get: 'Get it' 61 | }, 62 | empty_list: { 63 | title: 64 | "We're currently working on curating the most effective tools for distance learning.", 65 | newsletter: 66 | "Would like to hear once it's available? Subscribe to our newsletter", 67 | donate: 'Do you have a distance learning tool and would like to donate?', 68 | button: 'Donate Now' 69 | }, 70 | cause: { 71 | meta_description: 'Donated softwares to' 72 | }, 73 | footer: { 74 | love: 'Made with <❤/>', 75 | newsletter: 'Be the first one to know about the causes and tools', 76 | follow: 'Follow-us' 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /locales/index.js: -------------------------------------------------------------------------------- 1 | const en = require('./en.js') 2 | 3 | module.exports = { 4 | en 5 | } 6 | -------------------------------------------------------------------------------- /middleware/README.md: -------------------------------------------------------------------------------- 1 | # MIDDLEWARE 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your application middleware. 6 | Middleware let you define custom functions that can be run before rendering either a page or a group of pages. 7 | 8 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/routing#middleware). 9 | -------------------------------------------------------------------------------- /mixins/causesAndCategories.js: -------------------------------------------------------------------------------- 1 | import { DEFAULT_CAUSE } from '../config' 2 | import getCauses from '../services/getCauses' 3 | import getCauseName from '../services/getCauseName' 4 | import getCategoriesAndSoftwares from '../services/getCategoriesAndSoftwares' 5 | 6 | export default { 7 | asyncData({ params }) { 8 | const cause = params.cause ? params.cause : DEFAULT_CAUSE 9 | return { 10 | causes: getCauses(), 11 | categories: getCategoriesAndSoftwares(cause), 12 | selectedCauseName: getCauseName(cause) 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /netlify.toml: -------------------------------------------------------------------------------- 1 | [build] 2 | publish = "dist" 3 | command = "npm run generate" 4 | -------------------------------------------------------------------------------- /nuxt.config.js: -------------------------------------------------------------------------------- 1 | import messages from './locales' 2 | import getCauses from './services/getCauses' 3 | import { MAIN_TITLE, MAIN_DESCRIPTION, SOCIAL_DESCRIPTION } from './config' 4 | 5 | export default { 6 | mode: 'universal', 7 | /* 8 | ** Headers of the page 9 | 10 | 11 | */ 12 | head: { 13 | title: `${MAIN_TITLE} – ${MAIN_DESCRIPTION}`, 14 | meta: [ 15 | { charset: 'utf-8' }, 16 | { name: 'viewport', content: 'width=device-width, initial-scale=1' }, 17 | { 18 | hid: 'description', 19 | name: 'description', 20 | content: MAIN_DESCRIPTION 21 | }, 22 | 23 | { name: 'og:title', content: MAIN_TITLE }, 24 | { name: 'og:description', content: SOCIAL_DESCRIPTION }, 25 | { name: 'og:type', content: 'website' }, 26 | { name: 'og:url', content: 'https://softwaredonation.org/' }, 27 | { 28 | name: 'og:image', 29 | content: 'https://softwaredonation.org/softwaredonation.png' 30 | }, 31 | 32 | { name: 'twitter:card', content: 'summary' }, 33 | { 34 | name: 'twitter:title', 35 | content: MAIN_TITLE 36 | }, 37 | { name: 'twitter:description', content: SOCIAL_DESCRIPTION }, 38 | { 39 | name: 'twitter:image', 40 | content: 'https://softwaredonation.org/softwaredonation.png' 41 | }, 42 | { name: 'twitter:image:alt', content: MAIN_TITLE }, 43 | 44 | { name: 'msapplication-TileColor', content: '#ffffff' }, 45 | { name: 'theme-color', content: '#3183c8' } 46 | ], 47 | link: [ 48 | { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }, 49 | { 50 | rel: 'icon', 51 | type: 'apple-touch-icon', 52 | sizes: '180x180', 53 | href: '/apple-touch-icon.png' 54 | }, 55 | { 56 | rel: 'icon', 57 | type: 'image/png', 58 | sizes: '32x32', 59 | href: '/favicon-32x32.png' 60 | }, 61 | { 62 | rel: 'icon', 63 | type: 'image/png', 64 | sizes: '16x16', 65 | href: '/favicon-16x16.png' 66 | }, 67 | { rel: 'mask-icon', color: '#3183c8', href: '/safari-pinned-tab.svg' }, 68 | { 69 | rel: 'stylesheet', 70 | href: '//cdn-images.mailchimp.com/embedcode/horizontal-slim-10_7.css', 71 | type: 'text/css' 72 | } 73 | ], 74 | script: [ 75 | { src: 'https://identity.netlify.com/v1/netlify-identity-widget.js' } 76 | ] 77 | }, 78 | /* 79 | ** Customize the progress-bar color 80 | */ 81 | loading: { color: '#fff' }, 82 | /* 83 | ** Global CSS 84 | */ 85 | css: [{ src: '../assets/styles/main.scss', lang: 'scss' }], 86 | 87 | /* 88 | ** Plugins to load before mounting the App 89 | */ 90 | plugins: [ 91 | { src: '~/plugins/vue2-smooth-scroll', ssr: false }, 92 | { src: '~/plugins/vue2-scrollspy', ssr: false } 93 | ], 94 | /* 95 | ** Nuxt.js dev-modules 96 | */ 97 | buildModules: [ 98 | // Doc: https://github.com/nuxt-community/eslint-module 99 | '@nuxtjs/eslint-module', 100 | // Doc: https://github.com/nuxt-community/stylelint-module 101 | '@nuxtjs/stylelint-module', 102 | '@nuxtjs/style-resources', 103 | [ 104 | '@nuxtjs/google-analytics', 105 | { 106 | id: 'UA-159943888-1' 107 | } 108 | ] 109 | ], 110 | /* 111 | ** Nuxt.js modules 112 | */ 113 | modules: [ 114 | '@nuxtjs/pwa', 115 | // Doc: https://github.com/nuxt-community/dotenv-module 116 | '@nuxtjs/dotenv', 117 | 'nuxt-i18n' 118 | ], 119 | /* 120 | ** Build configuration 121 | */ 122 | build: { 123 | /* 124 | ** You can extend webpack config here 125 | */ 126 | extend(config, ctx) {} 127 | }, 128 | 129 | styleResources: { 130 | scss: ['assets/styles/_variables.scss'] 131 | }, 132 | 133 | i18n: { 134 | locales: ['en'], 135 | defaultLocale: 'en', 136 | vueI18n: { 137 | fallbackLocale: 'en', 138 | messages 139 | } 140 | }, 141 | 142 | generate: { 143 | routes: () => { 144 | return getCauses().map((item) => { 145 | return `/${item.id}` 146 | }) 147 | } 148 | } 149 | } 150 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "software-donation", 3 | "version": "1.0.0", 4 | "description": "Empower those in need with the power of software", 5 | "author": "Sandoche Adittane & Farbod Saraf", 6 | "private": true, 7 | "scripts": { 8 | "dev": "nuxt", 9 | "build": "nuxt build", 10 | "start": "nuxt start", 11 | "generate": "nuxt generate", 12 | "lint": "eslint --ext .js,.vue --ignore-path .gitignore .", 13 | "lint:fix": "eslint --ext .js,.vue --ignore-path .gitignore . --fix", 14 | "get-logos": "node scripts/getLogos.js" 15 | }, 16 | "lint-staged": { 17 | "*.{js,vue}": "npm run lint", 18 | "*.{css,vue}": "stylelint" 19 | }, 20 | "husky": { 21 | "hooks": { 22 | "pre-commit": "lint-staged" 23 | } 24 | }, 25 | "dependencies": { 26 | "@nuxtjs/dotenv": "^1.4.0", 27 | "@nuxtjs/pwa": "^3.0.0-0", 28 | "normalize.css": "^8.0.1", 29 | "nuxt": "^2.0.0", 30 | "nuxt-i18n": "^6.6.0", 31 | "vue2-scrollspy": "^2.3.1", 32 | "vue2-smooth-scroll": "^1.2.0" 33 | }, 34 | "devDependencies": { 35 | "@nuxtjs/eslint-config": "^2.0.0", 36 | "@nuxtjs/eslint-module": "^1.0.0", 37 | "@nuxtjs/google-analytics": "^2.2.3", 38 | "@nuxtjs/style-resources": "^1.0.0", 39 | "@nuxtjs/stylelint-module": "^3.1.0", 40 | "babel-eslint": "^10.0.1", 41 | "download": "^7.1.0", 42 | "eslint": "^6.1.0", 43 | "eslint-config-prettier": "^6.10.0", 44 | "eslint-plugin-nuxt": ">=0.4.2", 45 | "eslint-plugin-prettier": "^3.1.2", 46 | "html-metadata": "^1.7.1", 47 | "husky": "^4.0.0", 48 | "lint-staged": "^10.0.0", 49 | "node-sass": "^4.13.1", 50 | "prettier": "^1.19.1", 51 | "sass-loader": "^8.0.2", 52 | "stylelint": "^10.1.0" 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /pages/README.md: -------------------------------------------------------------------------------- 1 | # PAGES 2 | 3 | This directory contains your Application Views and Routes. 4 | The framework reads all the `*.vue` files inside this directory and creates the router of your application. 5 | 6 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/routing). 7 | -------------------------------------------------------------------------------- /pages/_cause/index.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 42 | -------------------------------------------------------------------------------- /pages/about.vue: -------------------------------------------------------------------------------- 1 | 15 | 16 | 41 | 42 | 59 | -------------------------------------------------------------------------------- /pages/index.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 25 | -------------------------------------------------------------------------------- /pages/program.vue: -------------------------------------------------------------------------------- 1 | 30 | 31 | 62 | 63 | 147 | -------------------------------------------------------------------------------- /plugins/README.md: -------------------------------------------------------------------------------- 1 | # PLUGINS 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains Javascript plugins that you want to run before mounting the root Vue.js application. 6 | 7 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/plugins). 8 | -------------------------------------------------------------------------------- /plugins/vue2-scrollspy.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Scrollspy from 'vue2-scrollspy' 3 | 4 | Vue.use(Scrollspy, { offset: 180 }) 5 | -------------------------------------------------------------------------------- /plugins/vue2-smooth-scroll.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import vueSmoothScroll from 'vue2-smooth-scroll' 3 | 4 | Vue.use(vueSmoothScroll) 5 | -------------------------------------------------------------------------------- /scripts/getLogos.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs') 2 | const URL = require('url').URL 3 | const download = require('download') 4 | const scrape = require('html-metadata') 5 | const softwaresData = require('../data/softwares.json') 6 | 7 | const getLogos = async function(links) { 8 | console.log('[Get Logos] - Starting') // eslint-disable-line 9 | for (const link of links) { 10 | const path = './static' + link.image 11 | const url = link.url 12 | if (!isLogoAlreadyDownloaded(path)) { 13 | console.log('[Get Logo] - Downloading logo from ' + url) // eslint-disable-line 14 | try { 15 | const urlLogo = await getLogoUrl(url) 16 | download(urlLogo) 17 | .then((data) => { 18 | fs.writeFileSync(path, data) 19 | console.log('[Get Logo] - Logo saved in ' + path) // eslint-disable-line 20 | }) 21 | .catch((e) => { 22 | console.log('[Get Logo] - Download error of ' + urlLogo) // eslint-disable-line 23 | }) 24 | } catch (error) { 25 | console.log('[Get Logo] - Failed') // eslint-disable-line 26 | } 27 | } 28 | } 29 | } 30 | 31 | const isLogoAlreadyDownloaded = function(path) { 32 | if (fs.existsSync(path)) { 33 | return true 34 | } else { 35 | return false 36 | } 37 | } 38 | 39 | const getLogoUrl = async function(url) { 40 | const metadata = await scrape(url) 41 | const imageUrl = metadata.general.icons[0].href 42 | const host = new URL(url).origin 43 | return imageUrl.includes('http') ? imageUrl : host + '/' + imageUrl 44 | } 45 | 46 | getLogos(softwaresData.softwares) 47 | -------------------------------------------------------------------------------- /services/getCategoriesAndSoftwares.js: -------------------------------------------------------------------------------- 1 | import softwaresData from '../data/softwares.json' 2 | 3 | const getCategoriesAndSoftwares = (causeId) => { 4 | const softwareList = softwaresData.softwares 5 | const cause = require(`../data/causes/${causeId}.json`) 6 | const categories = cause.categories 7 | 8 | const categoriesAndSoftwares = categories.map((category) => { 9 | const softwares = category.softwares.map((softwareItem) => { 10 | return softwareList.filter((software) => { 11 | return software.id === softwareItem.id 12 | })[0] 13 | }) 14 | 15 | category.softwares = softwares 16 | return category 17 | }) 18 | 19 | return categoriesAndSoftwares 20 | } 21 | 22 | export default getCategoriesAndSoftwares 23 | -------------------------------------------------------------------------------- /services/getCauseName.js: -------------------------------------------------------------------------------- 1 | import causesData from '../data/causes.json' 2 | 3 | const getCauseName = (causeId) => { 4 | return causesData.causes.filter((item) => { 5 | return item.id === causeId 6 | })[0].name 7 | } 8 | 9 | export default getCauseName 10 | -------------------------------------------------------------------------------- /services/getCauses.js: -------------------------------------------------------------------------------- 1 | import causesData from '../data/causes.json' 2 | 3 | const getCauses = () => { 4 | return causesData.causes 5 | } 6 | 7 | export default getCauses 8 | -------------------------------------------------------------------------------- /static/README.md: -------------------------------------------------------------------------------- 1 | # STATIC 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your static files. 6 | Each file inside this directory is mapped to `/`. 7 | Thus you'd want to delete this README.md before deploying to production. 8 | 9 | Example: `/static/robots.txt` is mapped as `/robots.txt`. 10 | 11 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/assets#static). 12 | -------------------------------------------------------------------------------- /static/admin/config.yml: -------------------------------------------------------------------------------- 1 | backend: 2 | name: git-gateway 3 | branch: dev 4 | squash_merges: true 5 | 6 | media_folder: "static/images/softwares" 7 | public_folder: "/images/softwares" 8 | site_url: https://softwaredonation.org/ 9 | 10 | collections: 11 | - label: "Softwares" 12 | name: "softwares" 13 | extension: "json" 14 | files: 15 | - label: "Softwares" 16 | name: "softwares" 17 | file: "data/softwares.json" 18 | fields: 19 | - label: "Softwares List" 20 | name: "softwares" 21 | widget: "list" 22 | fields: 23 | - {label: Id, name: id, widget: string} 24 | - {label: Name, name: name, widget: string} 25 | - {label: Description, name: description, widget: text} 26 | - {label: Eligibility, name: eligibility, widget: text} 27 | - {label: Url, name: url, widget: string} 28 | - {label: Image, name: image, widget: image} 29 | - label: "Causes" 30 | name: "causes" 31 | extension: "json" 32 | files: 33 | - label: "Causes" 34 | name: "causes" 35 | file: "data/causes.json" 36 | fields: 37 | - label: "Causes List" 38 | name: "causes" 39 | widget: "list" 40 | fields: 41 | - {label: Id, name: id, widget: string} 42 | - {label: Name, name: name, widget: string} 43 | - label: "Softwares per cause" 44 | name: "softwares-cause" 45 | folder: "data/causes" 46 | create: true 47 | extension: "json" 48 | identifier_field: title 49 | fields: 50 | - {label: Cause Id, name: title, widget: string} 51 | - label: "Category list" 52 | name: "categories" 53 | widget: "list" 54 | fields: 55 | - {label: Category name, name: name, widget: string} 56 | - label: "Sofwares" 57 | name: "softwares" 58 | widget: "list" 59 | fields: 60 | - {label: Software Id, name: id, widget: string} -------------------------------------------------------------------------------- /static/admin/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Content Manager 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /static/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/android-chrome-192x192.png -------------------------------------------------------------------------------- /static/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/android-chrome-512x512.png -------------------------------------------------------------------------------- /static/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/apple-touch-icon.png -------------------------------------------------------------------------------- /static/browserconfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | #da532c 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /static/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/favicon-16x16.png -------------------------------------------------------------------------------- /static/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/favicon-32x32.png -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/favicon.ico -------------------------------------------------------------------------------- /static/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/icon.png -------------------------------------------------------------------------------- /static/images/background.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /static/images/program/student1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/program/student1.jpg -------------------------------------------------------------------------------- /static/images/program/student2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/program/student2.jpg -------------------------------------------------------------------------------- /static/images/softwares/adobe-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/adobe-logo.png -------------------------------------------------------------------------------- /static/images/softwares/airtable-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/airtable-logo.png -------------------------------------------------------------------------------- /static/images/softwares/alugha-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/alugha-logo.png -------------------------------------------------------------------------------- /static/images/softwares/amazon-chime-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/amazon-chime-logo.png -------------------------------------------------------------------------------- /static/images/softwares/atlassian-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/atlassian-logo.png -------------------------------------------------------------------------------- /static/images/softwares/aws-ddi-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/aws-ddi-logo.png -------------------------------------------------------------------------------- /static/images/softwares/bluejeans-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/bluejeans-logo.png -------------------------------------------------------------------------------- /static/images/softwares/box-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/box-logo.png -------------------------------------------------------------------------------- /static/images/softwares/cisco-webex-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/cisco-webex-logo.png -------------------------------------------------------------------------------- /static/images/softwares/cloudflare-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/cloudflare-logo.png -------------------------------------------------------------------------------- /static/images/softwares/code-academy-logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/code-academy-logo.jpg -------------------------------------------------------------------------------- /static/images/softwares/codeacademy-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/codeacademy-logo.png -------------------------------------------------------------------------------- /static/images/softwares/datarobot-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/datarobot-logo.png -------------------------------------------------------------------------------- /static/images/softwares/designmodo-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/designmodo-logo.png -------------------------------------------------------------------------------- /static/images/softwares/discord-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/discord-logo.png -------------------------------------------------------------------------------- /static/images/softwares/dropbox-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/dropbox-logo.png -------------------------------------------------------------------------------- /static/images/softwares/headspace-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/headspace-logo.png -------------------------------------------------------------------------------- /static/images/softwares/heysummit-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/heysummit-logo.png -------------------------------------------------------------------------------- /static/images/softwares/hiver-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/hiver-logo.png -------------------------------------------------------------------------------- /static/images/softwares/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/icon.png -------------------------------------------------------------------------------- /static/images/softwares/intercom-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/intercom-logo.png -------------------------------------------------------------------------------- /static/images/softwares/krisp-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/krisp-logo.png -------------------------------------------------------------------------------- /static/images/softwares/liveagent-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/liveagent-logo.png -------------------------------------------------------------------------------- /static/images/softwares/livestorm-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/livestorm-logo.png -------------------------------------------------------------------------------- /static/images/softwares/logmein-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/logmein-logo.png -------------------------------------------------------------------------------- /static/images/softwares/loom-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/loom-logo.png -------------------------------------------------------------------------------- /static/images/softwares/manageengine-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/manageengine-logo.png -------------------------------------------------------------------------------- /static/images/softwares/meet-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/meet-logo.png -------------------------------------------------------------------------------- /static/images/softwares/message-bird-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/message-bird-logo.png -------------------------------------------------------------------------------- /static/images/softwares/messagebird-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/messagebird-logo.png -------------------------------------------------------------------------------- /static/images/softwares/miro-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/miro-logo.png -------------------------------------------------------------------------------- /static/images/softwares/nvidia-parabricks-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/nvidia-parabricks-logo.png -------------------------------------------------------------------------------- /static/images/softwares/openphone-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/openphone-logo.png -------------------------------------------------------------------------------- /static/images/softwares/packback-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/packback-logo.png -------------------------------------------------------------------------------- /static/images/softwares/pluralsight-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/pluralsight-logo.png -------------------------------------------------------------------------------- /static/images/softwares/pr-co-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/pr-co-logo.png -------------------------------------------------------------------------------- /static/images/softwares/remotehq-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/remotehq-logo.png -------------------------------------------------------------------------------- /static/images/softwares/rise-science-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/rise-science-logo.png -------------------------------------------------------------------------------- /static/images/softwares/sanako-logo.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/sanako-logo.jpeg -------------------------------------------------------------------------------- /static/images/softwares/sanako-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/sanako-logo.png -------------------------------------------------------------------------------- /static/images/softwares/screen-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/screen-logo.png -------------------------------------------------------------------------------- /static/images/softwares/slack-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/slack-logo.png -------------------------------------------------------------------------------- /static/images/softwares/tandem-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/tandem-logo.png -------------------------------------------------------------------------------- /static/images/softwares/teams-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/teams-logo.png -------------------------------------------------------------------------------- /static/images/softwares/typeform-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/typeform-logo.png -------------------------------------------------------------------------------- /static/images/softwares/udemy-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/udemy-logo.png -------------------------------------------------------------------------------- /static/images/softwares/webflow-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/webflow-logo.png -------------------------------------------------------------------------------- /static/images/softwares/zapier-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/zapier-logo.png -------------------------------------------------------------------------------- /static/images/softwares/zoho-remotely-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/zoho-remotely-logo.png -------------------------------------------------------------------------------- /static/images/softwares/zoom-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/images/softwares/zoom-logo.png -------------------------------------------------------------------------------- /static/mstile-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/mstile-150x150.png -------------------------------------------------------------------------------- /static/safari-pinned-tab.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 8 | Created by potrace 1.11, written by Peter Selinger 2001-2013 9 | 10 | 12 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /static/softwaredonation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SoftwareDonation/software-donation/3f15b72cc1b892d7ca26dce4bcdaa85989ac36e0/static/softwaredonation.png -------------------------------------------------------------------------------- /store/README.md: -------------------------------------------------------------------------------- 1 | # STORE 2 | 3 | **This directory is not required, you can delete it if you don't want to use it.** 4 | 5 | This directory contains your Vuex Store files. 6 | Vuex Store option is implemented in the Nuxt.js framework. 7 | 8 | Creating a file in this directory automatically activates the option in the framework. 9 | 10 | More information about the usage of this directory in [the documentation](https://nuxtjs.org/guide/vuex-store). 11 | -------------------------------------------------------------------------------- /stylelint.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | // add your custom config here 3 | // https://stylelint.io/user-guide/configuration 4 | rules: {} 5 | } 6 | --------------------------------------------------------------------------------