Giter Club home page Giter Club logo

eigen's Introduction

Meta

Intro

Don't know what Artsy is? Check out this overview or read our objc.io on team culture.

Artsy is an Open Source project. Feel free to check the Artsy readme for an overview as well as Practices and Playbooks.

Eigen is Artsy's mobile app repository.

Want to know more about Eigen? Read the mobile blog posts, or eigen's specifically.

Other mobile projects are Energy, with the retired Eidolon, Emission and Emergence.

Getting Started

Deployment

For how we deploy, check out the dedicated documentation:

Thanks

Thanks to all our contributors.

License

MIT License. See LICENSE.

About Artsy

This project is the work of engineers at Artsy, the world's leading and largest online art marketplace and platform for discovering art. One of our core Engineering Principles is being Open Source by Default which means we strive to share as many details of our work as possible.

You can learn more about this work from our blog and by following @ArtsyOpenSource or explore our public data by checking out our API. If you're interested in a career at Artsy, read through our job postings!

eigen's People

Contributors

alloy avatar artsy-peril[bot] avatar artsyit avatar ashfurrow avatar ashleyjelks avatar brainbicycle avatar damassi avatar dariakoko avatar dimatretyak avatar ds300 avatar erikdstock avatar gkartalis avatar jorystiefel avatar kierangillen avatar l2succes avatar lilyfromseattle avatar lordkiz avatar mdole avatar mennenia avatar mounirdhahri avatar mrsltun avatar olerichter00 avatar orta avatar peril-staging[bot] avatar pvinis avatar renovate-bot avatar renovate[bot] avatar sarahscott avatar sweir27 avatar yuki24 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

eigen's Issues

Remove applewebdata://

I'm pretty sure the use of applewebdata://EF86F744-3F4F-4732-8A4B-3E5E94D6D7DA/artist/marcel-duchamp is a total hack that's generally pretty bad. I really don't remember why it exists though.

I have a feeling its around tapping in ARTextViews but not certain.

Link in Readme 404s

From the Readme:

Want API documentation, go through this guide in gravity replacing localhost:4000 with artsy.net.

This link doesn't work, presumably because artsy/gravity is private. Also, the sentence contains a comma splice.

zero state for favorites when logged out

From @1aurabrown on September 16, 2014 17:36

Replace favorites view with a view containing a button to sign up or make the "YOU" button invoke the sign up overlay directly.

Copied from original issue: artsy/eigen-private#1982

Certificates Setup

Maybe I'm missing something but this line right here looks «impossible» for non-artsy employees

Login as [email protected] to Certificates, Identities and Profiles.

Which then takes us to the next issue:

Have the admin approve your certificate.

Unless the project doesn't actually required this and perhaps it could be removed from the setup steps for the OSS version?

Support state restoration

From @orta on December 15, 2014 15:26

When this was initially built it was crash and we took it out. State restoration means you carry on from where you just were in the app after it being closed. A much better experience then always being chucked back into the show feed.

Copied from original issue: artsy/eigen-private#2066

Flakey test

From @orta on January 16, 2015 18:37

https://magnum.travis-ci.com/artsy/eigen/builds/8718230

Could be not stubbing the network requests?

Failing tests:
    -[ARAppSearchViewControllerSpec test_searching__with_results__displays_search_results_as_iphone]
    -[ARAppSearchViewControllerSpec test_searching__with_results__displays_search_results_as_iphone]
** TEST FAILED **
Failures: https://eigen-ci.s3.amazonaws.com/snapshots/12522424/index.html
............
ARAppSearchViewControllerSpec
  test_searching__with_results__displays_search_results_as_iphone, expected: 3, got: 0
  /Users/travis/build/artsy/eigen/Artsy Tests/ARAppSearchViewControllerSpec.m:83
        expect(sut.searchResults.count).will.equal(3);
  test_searching__with_results__displays_search_results_as_iphone, expected a matching snapshot named displays search results as iphone
  /Users/travis/build/artsy/eigen/Artsy Tests/ARAppSearchViewControllerSpec.m:86
        return sut;
    });
});
     Executed 615 tests, with 2 failures (2 unexpected) in 35.556 (35.644) seconds

Copied from original issue: artsy/eigen-private#2123

Tests should always be using (view) contexts

From @orta on July 9, 2014 14:9

Maybe ARDeviceContexts aren't the way to go, but there's basically no tests for the iPad support and that's gonna bite us in the future. As well as everything always running in Sim 4" which is probably gonna get nuked next WWDC.

Perhaps something for presenting a View Controller in a context that does view will appear etc.

Copied from original issue: artsy/eigen-private#1835

logged out fair guide scroll view weirdness

From @1aurabrown on July 9, 2014 22:5

Looking through the fair changes, some things i noticed:

personal_2
personanl_1

  • on first scroll after entering the personalized guide, scroll view jumps at first (this is visible in both gifs)
  • dragging up results in the scroll indicator jiggling around (see gif 1)
  • scroll view has a much bigger height than the actual content, all the content fits well within the bounds of the screen but there is a ton of white space under the content. (see gif 2)
  • dragging down, the scroll indicator looks pretty weird as a floating bar midway between the top and bottom of the screen -- i propose we just turn off scroll indicators for this view. (see gif 2)

subjective things i noticed but that are not urgent for this release:

  • when i drag down, my expectation is to enter the expanded map view, but this expectation is not met
  • i expect to be able to pan the map without entering the expanded map view
    i think both these last two things things used to be possible, i'm assuming we changed them for a reason.

Copied from original issue: artsy/eigen-private#1850

Admin menu observer error when trying to shake in Favorites view

From @1aurabrown on January 5, 2015 20:20

2015-01-05 15:20:05.405 Artsy[28449:161919] *** Terminating app due to uncaught exception 'NSRangeException', reason: 'Cannot remove an observer <ARAdminSettingsViewController 0x79ec11b0> for the key path "editing" from <UITableView 0x7a17f000> because it is not registered as an observer.'
*** First throw call stack:
(
    0   CoreFoundation                      0x033c3946 __exceptionPreprocess + 182
    1   libobjc.A.dylib                     0x0304ca97 objc_exception_throw + 44
    2   CoreFoundation                      0x033c386d +[NSException raise:format:] + 141
    3   Foundation                          0x010dfad4 -[NSObject(NSKeyValueObserverRegistration) _removeObserver:forProperty:] + 629
    4   Foundation                          0x010df7af -[NSObject(NSKeyValueObserverRegistration) removeObserver:forKeyPath:] + 100
    5   Artsy                               0x00224db6 -[ARGenericTableViewController dealloc] + 102
    6   UIKit                               0x01e7703b -[UIViewController release] + 89
    7   CoreFoundation                      0x03283c37 CFRelease + 743
    8   CoreFoundation                      0x03299bee -[__NSArrayM dealloc] + 142
    9   libobjc.A.dylib                     0x03061772 _ZN11objc_object17sidetable_releaseEb + 248
    10  libobjc.A.dylib                     0x03062a63 -[NSObject release] + 25
    11  UIKit                               0x01e7abf8 -[UIViewController dealloc] + 1189
    12  UIKit                               0x01ea206b -[UINavigationController dealloc] + 620
    13  Artsy                               0x0010d9be -[ARNavigationController dealloc] + 350
    14  Artsy                               0x0043e3ae __swizzleDeallocIfNeeded_block_invoke + 206
    15  UIKit                               0x01e7703b -[UIViewController release] + 89
    16  libobjc.A.dylib                     0x03060eb1 objc_release + 65
    17  Artsy                               0x0008af2e -[ARTopMenuNavigationDataSource navigationControllerForFavorites] + 158
    18  Artsy                               0x0008b0ec -[ARTopMenuNavigationDataSource viewControllerForTabContentView:atIndex:] + 236
    19  Artsy                               0x0008aff4 -[ARTopMenuNavigationDataSource currentNavigationController] + 100
    20  Artsy                               0x00185dc3 -[ARTopMenuViewController rootNavigationController] + 83
    21  Artsy                               0x00023528 -[ARAppDelegate rageShakeNotificationRecieved] + 88
    22  Foundation                          0x01084c49 __57-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke + 40
    23  CoreFoundation                      0x0338e4a4 __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 20
    24  CoreFoundation                      0x0327c03b _CFXNotificationPost + 3051
    25  Foundation                          0x010af05e -[NSNotificationCenter postNotification:] + 131
    26  Artsy                               0x00276245 -[UIWindow(DHCShakeRecognizer) motionEnded:withEvent:] + 261
    27  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    28  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    29  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    30  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    31  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    32  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    33  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    34  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    35  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    36  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    37  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    38  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    39  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    40  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    41  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    42  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    43  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    44  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    45  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    46  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    47  libobjc.A.dylib                     0x030627cd -[NSObject performSelector:withObject:withObject:] + 84
    48  UIKit                               0x01edb39a -[UIResponder motionEnded:withEvent:] + 82
    49  UIKit                               0x01fac830 -[UIMotionEvent _sendEventToResponder:] + 149
    50  UIKit                               0x01d78258 -[UIWindow sendEvent:] + 1162
    51  UIKit                               0x01d3d549 -[UIApplication sendEvent:] + 242
    52  Artsy                               0x0042a985 -[ORKeyboardReactingApplication sendEvent:] + 101
    53  UIKit                               0x01d30d5c -[UIApplication _sendMotionEnded:] + 133
    54  UIKit                               0x01d25aef _UIApplicationHandleEvent + 460
    55  GraphicsServices                    0x0574ec8b _PurpleEventCallback + 765
    56  GraphicsServices                    0x0574e79b PurpleEventCallback + 46
    57  CoreFoundation                      0x032e7485 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 53
    58  CoreFoundation                      0x032e73ee __CFRunLoopDoSource1 + 510
    59  CoreFoundation                      0x032dc823 __CFRunLoopRun + 2451
    60  CoreFoundation                      0x032dbbcb CFRunLoopRunSpecific + 443
    61  CoreFoundation                      0x032db9fb CFRunLoopRunInMode + 123
    62  GraphicsServices                    0x0574d24f GSEventRunModal + 192
    63  GraphicsServices                    0x0574d08c GSEventRun + 104
    64  UIKit                               0x01d258b6 UIApplicationMain + 1526
    65  Artsy                               0x00024a02 main + 178
    66  libdyld.dylib                       0x040d4ac9 start + 1
    67  ???                                 0x00000001 0x0 + 1
)

Copied from original issue: artsy/eigen-private#2107

Switch to 3D VIR

From @orta on December 15, 2014 17:30

SceneKit now means that we can build a VIR that can work neatly across Folio / Eigen, and iPad/iPhone.

This also makes it way easier to support VIR collection.

Copied from original issue: artsy/eigen-private#2069

Remove CGContextSaveGState in normal tests

From @orta on August 7, 2014 17:6

  • -[ARArtworkViewControllerSpec with_related_artworks_iPad_related_artworks_view_looks_correct]'
    and
  • -[ARArtworkViewControllerSpec with_related_artworks_iPad_related_artworks_view_looks_correct]

Copied from original issue: artsy/eigen-private#1916

NetworkModels should be protocols

From @orta on September 8, 2014 18:5

no need for test based subclassing, but a separate object entirely.

Copied from original issue: artsy/eigen-private#1973

Fix artwork inquiry rotation on ipad with ios 7

From @1aurabrown on January 19, 2015 17:38

willRotateToInterfaceOrientation and didRotationFromInterfaceOrientation are not being called on the Artwork VC behind the inquiry vc in ios 7 because it's not considered visible. The artwork masonry view, which sits in the ArtworkVC, is subscribed to and receiving NSNotifications about Device orientation changes. The result is that when you rotate the inquiry view on an ipad, the artwork masonry view in the artwork view behind it re-arranges itself but the rest of the artwork view does not.

This is not an issue in ios 8, the view behind the modal (Artwork view) simply re-triggers layout on rotation.

Copied from original issue: artsy/eigen-private#2133

ability to switch between staging and production facebook app id's

Right now, the production app id is in our info.plist. This is the id we want to ship with our app. In our cocoapods keys, I think we're using the staging app id. Ideally we should be able to switch between the two app ids at runtime, specifically when invoking the dev menu and switching between artsy's staging and production servers.

I think @ashfurrow's auth pod will solve this but i'm putting this issue here for good measure so we don't forget that this is an issue.

bundle exec pod install -> Access Denied

Hi

when I run 'bundle exec pod install', I get Error saying that I don't have access to pod 'Artsy+UIFonts'. Could that mean that particular git repo is private undir Artsy ?

3 build errors!

3 build errors on iPhone 6 simulator. Please Fix it and then share it, as I don't fix someone's else code! thanks.

map blinks through scroll view when scrolling

From @1aurabrown on July 9, 2014 22:30

not sure what causes this flash of the map through the scroll view -- pay attention at the very beginning of the gif:
blinking

(also the scroll view shouldn't be so long given its content.)

Copied from original issue: artsy/eigen-private#1853

Support today extensions

From @orta on December 15, 2014 15:24

We could have something like "artwork for the day", or "recommended artwork of the day" in there.

Copied from original issue: artsy/eigen-private#2064

Get background fetch back in the app

From @orta on December 15, 2014 15:25

Extensions support means that you can grab non-private data in the background. This means that fetch networking can now work properly.

We should grab things like:

  • Hero Units
  • First 15 items in the feed
  • 10 most recent works

Copied from original issue: artsy/eigen-private#2065

Tests should be able to skip animations

From @orta on July 9, 2014 14:20

Not sure how to deal with some of the implicit ones ( Keyboards, Alert Views? ) but there should be a lot more that can be made with animated: selectors.

Copied from original issue: artsy/eigen-private#1839

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.