├── client ├── src │ ├── assets │ │ ├── scss │ │ │ ├── src │ │ │ │ ├── partials │ │ │ │ │ └── buttons.scss │ │ │ │ ├── layouts │ │ │ │ │ ├── footer.scss │ │ │ │ │ ├── admin.scss │ │ │ │ │ └── listing.scss │ │ │ │ ├── components │ │ │ │ │ ├── submit.scss │ │ │ │ │ ├── breadcrumbs.scss │ │ │ │ │ └── pagination.scss │ │ │ │ ├── helpers │ │ │ │ │ ├── _variables.scss │ │ │ │ │ ├── _qe-menubar.scss │ │ │ │ │ └── _fonts.scss │ │ │ │ ├── main.scss │ │ │ │ └── misc.scss │ │ │ └── README.md │ │ ├── img │ │ │ ├── logo.png │ │ │ ├── avatar │ │ │ │ ├── 1.png │ │ │ │ ├── 10.jpg │ │ │ │ ├── 2.jpg │ │ │ │ ├── 3.jpg │ │ │ │ ├── 4.jpg │ │ │ │ ├── 5.jpg │ │ │ │ ├── 6.jpg │ │ │ │ ├── 7.jpg │ │ │ │ ├── 8.png │ │ │ │ └── 9.jpg │ │ │ ├── notes-logo.ai │ │ │ ├── gray-square.png │ │ │ ├── julia-logo.png │ │ │ ├── loading-dots.gif │ │ │ ├── notes-logo.png │ │ │ ├── python-logo.png │ │ │ ├── default-avatar.png │ │ │ ├── loadingSpinner.gif │ │ │ ├── light-gray-square.jpg │ │ │ ├── logo │ │ │ │ ├── julia-logo.png │ │ │ │ ├── landing-sloan-logo.png │ │ │ │ ├── landing-jupyter-logo.png │ │ │ │ ├── landing-quantecon-logo.png │ │ │ │ └── landing-sloan-logo-inverted.png │ │ │ ├── qe-menubar-icons.png │ │ │ ├── quant-econ-avatar.png │ │ │ ├── qe-logo-horizontal.png │ │ │ └── notes-logo.svg │ │ └── fonts │ │ │ ├── foundation-icons.eot │ │ │ ├── foundation-icons.ttf │ │ │ └── foundation-icons.woff │ ├── index.css │ ├── reducers │ │ ├── Submit.js │ │ ├── index.js │ │ ├── User.js │ │ ├── Utils.js │ │ ├── Announcements.js │ │ ├── SubmissionList.js │ │ └── EditSubmission.js │ ├── remark-math │ │ ├── index.js │ │ ├── package.json │ │ └── inline.js │ ├── components │ │ ├── App │ │ │ ├── App.test.js │ │ │ ├── App.css │ │ │ └── App.jsx │ │ ├── Notification.jsx │ │ ├── NotebookFromHTML.jsx │ │ ├── Image.jsx │ │ ├── auth │ │ │ └── SignInButton.js │ │ ├── partials │ │ │ ├── Breadcrumbs.jsx │ │ │ ├── MetaTags.jsx │ │ │ └── Notebook.jsx │ │ ├── TempComponent.jsx │ │ ├── MarkdownMathJax.jsx │ │ ├── Sitemap.jsx │ │ ├── ProtectedRoute.jsx │ │ ├── Contact.jsx │ │ ├── AdminRoute.jsx │ │ ├── submissions │ │ │ ├── EditSubmission.js │ │ │ └── SubmissionList.jsx │ │ ├── NotFound.jsx │ │ ├── comments │ │ │ ├── Reply.js │ │ │ └── ReplyList.js │ │ ├── About.jsx │ │ ├── user │ │ │ └── UserPreview.jsx │ │ ├── admin │ │ │ ├── RemoveSubmissionModal.jsx │ │ │ └── AddAdminModal.jsx │ │ ├── home │ │ │ └── Home.jsx │ │ └── FAQ.jsx │ ├── index.js │ ├── store │ │ ├── store.js │ │ └── configure-store.js │ ├── imageData.json │ ├── utils │ │ ├── url.js │ │ ├── localStorage.js │ │ ├── popup.js │ │ └── trimText.js │ ├── containers │ │ ├── AnnouncementsContainer.jsx │ │ ├── user │ │ │ ├── MyProfileContainer.js │ │ │ ├── UserContainer.js │ │ │ └── EditProfileContainer.js │ │ ├── auth │ │ │ └── OAuthSignInButton.js │ │ ├── SubmitContainer.js │ │ ├── HeadContainer.jsx │ │ ├── submission │ │ │ ├── EditSubmissionPreviewContainer.js │ │ │ ├── SubmissionListContainer.jsx │ │ │ ├── EditSubmissionContainer.js │ │ │ └── SubmissionContainer.js │ │ ├── PreviewContainer.js │ │ └── comment │ │ │ └── CommentContainer.jsx │ └── actions │ │ ├── auth │ │ └── signOut.js │ │ ├── utils.js │ │ ├── user.js │ │ ├── editSubmission.js │ │ └── submissionList.js ├── public │ ├── favicon.ico │ ├── manifest.json │ └── index.html ├── tests │ └── dataframe.jpg ├── .gitignore └── package.json ├── server ├── robots.txt ├── assets │ ├── invite-template.html │ ├── nbconvert │ │ └── templates │ │ │ └── notebookHTML.tpl │ └── aboutPage.md ├── js │ ├── db │ │ ├── models │ │ │ ├── EmailList.js │ │ │ ├── AdminList.js │ │ │ ├── Announcement.js │ │ │ ├── Comment.js │ │ │ ├── Submission.js │ │ │ └── User.js │ │ ├── migrations │ │ │ ├── template.js │ │ │ ├── 1547430906567-test-migrate.js │ │ │ ├── 1548822198972-delete-empty-comment.js │ │ │ ├── 1555396627360-resize-avatars-to-50px-google.js │ │ │ ├── 1555396634463-resize-avatars-to-50px-github.js │ │ │ ├── 1545351944251-add-authorName-Submissions.js │ │ │ └── 1555330744208-resize-avatars-to-50px-twitter.js │ │ ├── .migrate │ │ ├── README.md │ │ └── mongoose.js │ ├── auth │ │ ├── init.js │ │ ├── jwt.js │ │ └── adminjwt.js │ ├── sorting.js │ ├── languages.js │ ├── render.js │ └── sitemap.js ├── routes │ ├── auth │ │ ├── isAuthenticated.js │ │ ├── signOut.js │ │ ├── fb.js │ │ └── twitter.js │ ├── invite.js │ └── restore │ │ └── restore.js └── package.json ├── .dockerignore ├── scripts ├── backup_db.sh ├── util │ └── util-input.sh ├── dev-start.sh └── dev-install.sh ├── .gitignore ├── jsdoc-config.json ├── Dockerfile-server ├── docker-compose.yml ├── backup.sh └── package.json /client/src/assets/scss/src/partials/buttons.scss: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /client/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | padding: 0; 4 | font-family: sans-serif; 5 | } 6 | -------------------------------------------------------------------------------- /client/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/public/favicon.ico -------------------------------------------------------------------------------- /server/robots.txt: -------------------------------------------------------------------------------- 1 | User-Agent: * 2 | Disallow: /admin 3 | 4 | Sitemap: https://YOUR-HOSTNAME/sitemap.xml 5 | -------------------------------------------------------------------------------- /client/tests/dataframe.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/tests/dataframe.jpg -------------------------------------------------------------------------------- /client/src/assets/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/logo.png -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | server/node_modules 2 | server/npm-debug.log 3 | client/build 4 | client/node_modules 5 | client/docs 6 | -------------------------------------------------------------------------------- /client/src/reducers/Submit.js: -------------------------------------------------------------------------------- 1 | import { 2 | BEGIN_SUBMIT, 3 | END_SUBMIT 4 | } from '../actions/submit'; 5 | 6 | -------------------------------------------------------------------------------- /client/src/assets/img/avatar/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/1.png -------------------------------------------------------------------------------- /client/src/assets/img/avatar/10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/10.jpg -------------------------------------------------------------------------------- /client/src/assets/img/avatar/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/2.jpg -------------------------------------------------------------------------------- /client/src/assets/img/avatar/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/3.jpg -------------------------------------------------------------------------------- /client/src/assets/img/avatar/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/4.jpg -------------------------------------------------------------------------------- /client/src/assets/img/avatar/5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/5.jpg -------------------------------------------------------------------------------- /client/src/assets/img/avatar/6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/6.jpg -------------------------------------------------------------------------------- /client/src/assets/img/avatar/7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/7.jpg -------------------------------------------------------------------------------- /client/src/assets/img/avatar/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/8.png -------------------------------------------------------------------------------- /client/src/assets/img/avatar/9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/avatar/9.jpg -------------------------------------------------------------------------------- /client/src/assets/img/notes-logo.ai: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/notes-logo.ai -------------------------------------------------------------------------------- /client/src/assets/img/gray-square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/gray-square.png -------------------------------------------------------------------------------- /client/src/assets/img/julia-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/julia-logo.png -------------------------------------------------------------------------------- /client/src/assets/img/loading-dots.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/loading-dots.gif -------------------------------------------------------------------------------- /client/src/assets/img/notes-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/notes-logo.png -------------------------------------------------------------------------------- /client/src/assets/img/python-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/python-logo.png -------------------------------------------------------------------------------- /scripts/backup_db.sh: -------------------------------------------------------------------------------- 1 | DIR=`date +%m-%d-%y` 2 | DEST=/db_backups/$DIR 3 | mkdir $DEST 4 | mongodump -h localhost -d Bookshelf -o $DEST -------------------------------------------------------------------------------- /client/src/assets/img/default-avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/default-avatar.png -------------------------------------------------------------------------------- /client/src/assets/img/loadingSpinner.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/loadingSpinner.gif -------------------------------------------------------------------------------- /client/src/assets/img/light-gray-square.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/light-gray-square.jpg -------------------------------------------------------------------------------- /client/src/assets/img/logo/julia-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/logo/julia-logo.png -------------------------------------------------------------------------------- /client/src/assets/img/qe-menubar-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/qe-menubar-icons.png -------------------------------------------------------------------------------- /client/src/assets/img/quant-econ-avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/quant-econ-avatar.png -------------------------------------------------------------------------------- /client/src/assets/fonts/foundation-icons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/fonts/foundation-icons.eot -------------------------------------------------------------------------------- /client/src/assets/fonts/foundation-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/fonts/foundation-icons.ttf -------------------------------------------------------------------------------- /client/src/assets/fonts/foundation-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/fonts/foundation-icons.woff -------------------------------------------------------------------------------- /client/src/assets/img/qe-logo-horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/qe-logo-horizontal.png -------------------------------------------------------------------------------- /client/src/assets/img/logo/landing-sloan-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/logo/landing-sloan-logo.png -------------------------------------------------------------------------------- /client/src/assets/img/logo/landing-jupyter-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/logo/landing-jupyter-logo.png -------------------------------------------------------------------------------- /client/src/assets/img/logo/landing-quantecon-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/logo/landing-quantecon-logo.png -------------------------------------------------------------------------------- /client/src/assets/img/logo/landing-sloan-logo-inverted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/QuantEcon/Bookshelf/master/client/src/assets/img/logo/landing-sloan-logo-inverted.png -------------------------------------------------------------------------------- /server/assets/invite-template.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
Please send feedback to contact@quantecon.org
19 |We couldn’t find the page you were looking for.
20 | 21 |Please check the URL or try a link below:
22 | 23 |(pre-rendered notebook)
22 |
30 |
31 |
32 |
33 |
43 |
Are you sure you want to remove this submission?
51 |WARNING: THIS IS IRREVERSIBLE. THIS WILL REMOVE THE CONTENT FROM THE DATABASE
52 |Enter the name of the submission to continue:
54 | 69 |22 | How does this site work? 23 |
24 |25 | This site is used to encourage the sharing and use of open source code for 26 | economic research and modeling. Users can upload their own work, find other 27 | notebooks, vote, comment and download notebooks. 28 |
29 |32 | Are the notebooks interactive? 33 |
34 |35 | Sort of. There is no kernel running, so you cannot execute code cells. However, 36 | libraries such as PlotlyJS that use JavaScript allow a notebook's output cells 37 | to be interactive. 38 |
39 |42 | Is this site only for economics? 43 |
44 |45 | The target audience is for economists and economic students and professors. 46 |
47 |50 | Can anyone submit a notebook? 51 |
52 |53 | Yes! We encourage you to share your work and discover others' work! 54 |
55 |58 | What should I do if I find an issue with the website? 59 |
60 |61 | Follow 62 | this link 63 | and post an issue. Please provide a detailed description of the issue and what 64 | you were doing at the time. Submit the issue under the category "Notes Feedback". 65 |
66 |